当前位置:   article > 正文

数据结构线性表算法中元素插入或删除(前移或后移)参数为“+1”和“-1”(python为例)_顺序表元素后移算法讲解

顺序表元素后移算法讲解

例如:1.在顺序表中序号i的位置上插上元素“e”。

 2.删除顺序表中序号为“ i ”的元素。

这里涉及到线性表的相关知识,假设有n个元素,线性表中是

a1,a2,a3,a4,a5,a6,ai,ai+1~~~~~~an,一共有n个元素,长度为n,排序是从0开始,到n-1结束

(0,1,2,3,i,i+1~~~~~n-1),为了防止后移时有效元素被覆盖,元素的插入是从末尾开始到插入位置的元素的全部元素向后移,然后插入需要插入的元素,正如上面——在顺序表中序号i的位置上插上元素“e”,那么就是 i 到 n-1 的元素向后移一位。代码中

self.data[j]=self.data[j-1]。很多小伙伴很疑惑?元素向后移,序号增加,应该是“j+1”啊!最后一个元素n-1的序号应变为n。这里又涉及到python赋值的知识,原理很简单:例如x=1,是值1赋值给变量a,赋值是从右边赋值到左边。所以[j-1]+1=j,元素后移,序号增加,只是我们赋值会改变代码形式。

元素删除是直接将指定位置及后面的元素直接向前移,代码中

self.data[j]=self.data[j+1]符号为“+”号也是赋值的原理。

文章就是小白在自己学习遇到的问题记录下来的,知识很简单,希望对需要的小伙伴有帮助!

谢谢!

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/63451
推荐阅读
相关标签
  

闽ICP备14008679号