clion + g++
线性表的顺序存储结构,指的是用一段地址连续的存储单元一次存储线性表中的数据元素

使用一维数组来实现顺序存储结构
存储空间:T* m_array
当前长度:int m_length
判断目标位置是否合法
如果合法,将目标位置作为数组下标获取元素
- bool get(int i, T &e) const{
- bool ret = ((0 <= i) && (i <= m_length));
- ret = ret && (m_length < capacity());
-
- if(ret){
- e = m_array[i];
- }
-
- return ret;
- }
判读目标位置是否合法
将目标位置之后的所有元素后移一个位置
将新元素插入目标位置
线性表长度加1
- bool insert(int i, const T &e){
- bool ret = ((0 <= i) && (i <= m_length));
- ret = ret && (m_length < capacity());
-
- if(ret){
- for(int p = m_length - 1; p >= i; p-- ){
- m_array[p + 1] = m_array[p];
- }
- m_array[i] = e;
- m_length++;
- }
-
- return ret;
- }
判断目标位置是否合法
将目标位置后的所有元素前移一个位置
线性表长度减1
- bool remove(int i){
- bool ret = ((0 <= i) && (i <= m_length));
- ret = ret && (m_length < capacity());
-
- if(ret){
- for(int p = i; p < m_length - 1; p++ ){
- m_array[p] = m_array[p + 1];
- }
- m_length--;
- }
-
- return ret;
- }
喝水不忘挖井人: 更多内容请搜索狄泰软件学院(淘宝/B站)