线性表的顺序存储结构,也称为顺序表,指用一段连续的存储单元依次存储线性表中的数据元素。
根据顺序表的特性,我们用数组来实现顺序表,下面是我通过数组实现的Java版本的顺序表。
主要注意上述3个私有成员变量,如下:
如同注释解释的那样,size用来表示顺序表的长度,data用来表示数组,而capacity用来表示数组的长度.
相信data应该比较好理解,而对应的两个长度变量相对难理解一些,下面解释一下:
这里主要讲讲顺序表的插入和删除:
顺序表的插入演示如图所示:
根据图片可以看出插入一个元素后,插入位置之后的元素都需要向后移动一个位置。
删除操作则是插入操作的逆过程,删除位置之后的元素都需要向前移动一个位置。
时间复杂度分析:
解释:上述的存入和插入有区别,存入表示存储在数组末尾,而插入表示插入在任意位置。
优缺点分析:
优点: