1.线性表
具有相同特性的数据结构的集合。
物理结构:不一定连续
逻辑结构:一定是连续的
2.顺序表
顺序表是线性表的一种,顺序表的底层结构就是数组。
可以存储任意类型的数据(包括内置类型和自定义类型)。
物理结构:一定是连续的
逻辑结构:一定是连续的
3.顺序表的分类
静态顺序表和动态顺序表,动态顺序表是优于静态顺序表的。
静态顺序表的缺陷:1.给小了,空间不够用。 2.给大了,造成空间浪费。
静态顺序表里是定长数组。
动态顺序表是可以动态增容的(成倍数的增加,一般以二倍进行增加)。
4.顺序表的问题和解决方法
1.中间和头部的插入删除,时间复杂度为O(N)
2.增容需要申请新空间,拷贝数据,释放旧空间,会有一定的消耗
3.增容一般是2倍增长,势必会造成空间浪费
针对这一问题,就提出了链表结构
5.基于顺序表的通讯录项目
基于C语言顺序表实现通讯录的增删查改。