线性表的存储结构之顺序表
1.顺序表定义
用顺序存储(逻辑上相邻物理上也相邻)的方式来实现线性表
2.两种实现方式
1.静态表SqList
相关实现:
缺点:
1.存储空间静态分配的(最大容量MaxSize),太少不够用 太多浪费内存资源
2.动态表 SeqList
相关实现:
优点:
可以动态的分配数组的空间
缺点:
在调用 增加动态数组空间的时候,时间开销大(将旧数组的值重新复制到新数组)
3.顺序表的特点
1.随机访问(他们顺序存储的,只需要知道第一个元素存放地址,后面都知道了)
常用 L.data[0],L.data[1]....直接访问 💪
2.存储密度高,每个结点就存储数据元素本身
(不像链表(存储元素本身+下一个结点指针))
3.拓展容量不方便
(静态表来说:不能拓展 动态表来说:拓展所需时间复杂度高)
4.增加删除时间开销大(需要移动大量的元素)