数据结构-线性表(数组存储)插入和删除节点的平均移动次数计算

Posted lettuce-u

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据结构-线性表(数组存储)插入和删除节点的平均移动次数计算相关的知识,希望对你有一定的参考价值。

思路:平均移动次数=总移动次数/移动情况个数

 


 

假设线性表的长度为n,那么插入位置有n+1个,也就是说,有n+1个移动情况

插入第一个位置时需要移动n次,第二个位置需要移动n-1次,以此类推,总移动次数=n+(n-1)+(n-2)+...+2+1+0=n(n+1)/2,共有n+1个插入位置,所以平均移动次数为n/2。

线性表有n个元素,所以删除位置有n个

删除第一个节点要移动剩余的n-1个,删除第二个要移动n-2次...所以总移动次数=(n-1)+(n-2)+(n-3)+...+2+1+0=n(n-1)/2,共有n个删除情况,所以平均移动次数为(n-1)/2

          

以上是关于数据结构-线性表(数组存储)插入和删除节点的平均移动次数计算的主要内容,如果未能解决你的问题,请参考以下文章

线性表的创建,删除插入等操作

线性表的顺序存储和链式存储

线性表的顺序存储结构和链式存储结构的比较

数据结构和算法二(数组)

线性表的链式存储结构

顺序栈