. 在一个长度为n的线性表中,删除值为x的元素时需要比较元素和移动元素的总次数为( )。
A.(n+1)/2 B.n/2
C.n D.n+1
解析:
如果是指定值为x的元素的话那就没有顺序表与链表的差别了,都是从第一个元素开始顺序查找。假设长度为n的线性表中只有一个值为x的元素,则从第一个元素起到找到值为x(假设为第i个元素)比较i次,删除i后,第i+1个元素到第n个元素都要移动,移动n-(i+1)+1即n-i次,故比较元素和移动元素的总次数为n次。注:以上答案是针对线性表中只有一个值为x的元素,若有多个值为x的元素则总次数是不确定的。
问一下n-(i+1)后面为什么还要加1

在一个长度为n的线性表中,删除值为x的元素时需要比较元素和移动元素的总次数为
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
3条回答 默认 最新
- MarkHan_ 2023-03-14 12:54关注
该回答引用GPTᴼᴾᴱᴺᴬᴵ
n-(i+1)是计算从第i+1个元素到第n个元素需要移动的次数,因为需要移动n-(i+1)个元素。加1是因为第i+1个元素本身也需要向前移动一位,所以总共要移动n-i次。本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报