首页 > 试题广场 >

在长度为n的顺序表的第i(1≤i≤n+1)个位置上插入一个元

[单选题]
在长度为n的顺序表的第i(1≤i≤n+1)个位置上插入一个元素,元素的移动次数为
  • n-i+1
  • n-i
  • i
  • i -1
比如: 1    2    4    5    6
在第三个位置插入3
需要移动的元素4    5    6
n-i    =    5 - 3    =    2
但是移动的次数是3,所以  n-i+1

发表于 2019-10-05 11:55:51 回复(2)
感觉这个题,表述的不太好,我觉得应该问“需要移动元素的个数”
发表于 2022-07-09 15:59:32 回复(0)
在第i个位置上插入元素,i的后面有n-i个元素,这n-i个元素都要后移,但是为了把新元素插入到第i个位置,第i个位置上原来的元素也得后移,所以总共有n-i+1个元素要后移。
发表于 2021-02-04 20:53:59 回复(0)
注意看题目,i >= 0,即第i个元素,比如第一个元素,对应数组下标为0.
发表于 2022-01-29 09:03:12 回复(0)
n个元素一共有n+1个位置,在第i个位置插入后面还有n+1-i个位置,每个位置都要挪动一次,故要移动n+1-i次
发表于 2021-11-06 10:58:57 回复(0)
注意在第i个插入就是表示,在data[i-1]前面插入
发表于 2021-04-22 21:10:52 回复(0)
看成了链表,我眼瞎了!
发表于 2020-12-02 10:28:51 回复(0)
如1 2 3 4 5,可以插入的位置用*表示,每个*代表i的位置,则为*1*2*3*4*5*,如果在第三个*处插入,则5 4 3分别往后移动一位,故移了3次,其中n=5,i=3,移动次数=n-i+1
发表于 2020-06-23 14:49:33 回复(0)

直接看哪个答案符合,i插到n+1时移动为0的。

或者类似于4到9数字个数有9-4+1

发表于 2020-03-19 22:46:11 回复(0)