前言
线性表是最基本、最简单、也是最常用的一种数据结构。线性表(linear list)是数据结构的一种,一个线性表是n个具有相同特性的数据元素的有限序列。
线性表中数据元素之间的关系是一对一的关系。顺序表与链表是非常基本的数据结构,它们可以被统称为线性表。
顺序表
具体参考以前的一篇:顺序表
链表
参考以前的一篇博客:
链表
区别
顺序表
顺序表一般表现为数组,使用一组地址连续的存储单元依次存储数据元素。
优点
1.存储密度大,空间利用率高。(局部性原理,连续存放,命中率高)
2.存储速度快,直接利用下标存取(复杂度为O(1))。
缺点
1.长度固定,必须在分配内存之前确定顺序表的长度,具体做法是初始情况使用一个初始容量(可以指定)的数组,当元素个数超过数组的长度时,就重新申请一个长度为原先二倍的数组,并将旧的数据复制过去,这样就可以有新的空间来存放元素了。这样,列表看起来就是可变长度的。
2.存储空间连续。
3.插入删除比较慢&#