数据结构-----线性表

              定义顺序表的结构

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

表中已有元素的数量。

  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);

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

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

原文地址:https://www.cnblogs.com/cliuwei/p/4705107.html