二、线性表——数组描述
线性表:每个实例都是数据元素的有序集合(逻辑结构:只存在元素的先后顺序关系),即L={e0,e1...en-1}:n——线性表长度/大小,n=0时线性表为空表;ei——第i个元素(第0个,最后一个元素为第n-1个元素en-1);i——第i个元素ei的索引;
数组描述:一维数组element[]——element[0]~element[arrayLength-1]——物理存储结构为顺序存储
- 数组的每个位置可以存放一个线性表的一个元素;元素和位置之间为一一映射关系(如location(i)=i ,即第0个元素e0存在第0个位置element[0]);
- 既然是空间存储元素,因此(1)构造函数只是进行初始数组空间分配,listSize=0 建立线性表还需要 挨个在数组单个空间上 插入线性表元素;(2)析构函数只是释放 单个 数组空间
线性表——vector描述
对线性表数组实现的方法嵌套vector的操作设计
6、方法erase
- 3种情况:(1)theIndex < 0 或 theIndex >= listSize(删除无效 或 空表listSize=0)——checkIndex;(2)删除第一个节点;(3)删除内部节点;
- 从链表的删除可以看出:无论是(2)和(3)对删除节点的指针域是否为NULL都一样——即 前驱的指针域 = 删除节点的指针域,即“找前驱”即可。
7、方法insert