1.线性表的定义
①线性表(List)是零个或多个数据元素的集合
②线性表中的数据元素之间是有顺序的
③线性表中的数据元素个数是有限的
④线性表中的数据元素的类型必须相同
2.数学定义
线性表是具有相同类型的 n( ≥0)个数据元素的
有限序列
(a1, a2, …, an)
ai 是表项,n 是表长度
3.性质
a0为线性表的第一个元素,只有一个后继
an为线性表的最后一个元素,只有一个前驱
除a0和an外的其它元素ai,既有前驱,又有后继
线性表能够逐项访问和顺序存取
4.线性表的操作
线性表的一些常用操作
创建线性表 create_sqelist
销毁线性表 destory_sqelist
清空线性表 clear_sqelist
将元素插入线性表 insert_in_sqelist
将元素从线性表中删除 remove_in_sqelist
获取线性表中某个位置的元素 get_in_sqelist
获取线性表的长度 get_length
5.线性表操作的实现
线性表在程序中表现为一种特殊的数据类型
线性表的操作在程序中的表现为一组函数
1 List* create_list() 2 { 3 return NULL; 4 } 5 6 void destroy_list(List* list) 7 { 8 9 } 10 11 void clear_list(List* list) 12 { 13 14 } 15 16 int get_length(List* list) 17 { 18 return 0; 19 } 20 21 int insert_list(List* list, ListNode* node, int pos) 22 { 23 return 0; 24 } 25 26 ListNode* get_in_list(List* list, int pos) 27 { 28 return NULL; 29 } 30 31 ListNode* delete_list(List* list, int pos) 32 { 33 return NULL; 34 }