zoukankan      html  css  js  c++  java
  • 数据结构-----线性表

                  定义顺序表的结构

      用数组来模拟顺序表的保存形式,在顺序表中还需定义一个变量,用来保存顺序

    表中已有元素的数量。

      typedef  struct             //定义顺序表结构

      {

        DATA    ListData[MAXSIZE+1];     //保存顺序表的数组

        int        ListLen;                         //顺序表已存节点的数量

      }SeqListType;

    (1):初始化顺序表

      void SeqListInit(SeqListType *SL);

    (2):返回顺序表的元素数量

         int SeqListLength(SeqListType *SL);

    (3):向顺序表中添加元素

      int SeqListAdd(SeqListType *SL,DATA data);

    (4):向顺序表中插入元素

          int SeqListInsert(SeqListType *SL,int n,DATA data);

    (5):删除顺序表中的数据元素

          int SeqListDelete(SeqListType *SL,int n);

    (6):根据序号返回元素

         DATA *SeqListFindByNum(SeqListType *SL,int n);

    (7):按关键字查找

      int SeqListFindByCont(SeqListType *SL,char *key);

    (8):遍历顺序表中的内容

         int SeqListAll(SeqListType *SL);

       不足之处是:顺序表是按顺序将数据保存到内存中,因此在顺序表中

    存取数据很方便,但在插入数据时,需要移动大量的数据,最坏的情况下,如果每次都是要在顺序表的首位置插入元素,则需要将顺序表中所有元素都向后移,效率非常低。

  • 相关阅读:
    Codeforces Round #631 (Div. 2)
    Codeforces Round #500 (Div. 2) [based on EJOI]
    KMP+状态机
    状态机模型
    最短编辑距离
    stringstream读入-最优乘车
    多重背包
    Codeforces:B. New Year and Ascent Sequence
    查找目录下所有文件使用到的宏
    QProcess调用外部程序并带参执行
  • 原文地址:https://www.cnblogs.com/cliuwei/p/4705107.html
Copyright © 2011-2022 走看看