题目
在一个长度为n的顺序表中,在第i个元素(1≤i≤n+1)之前插入一个新元素时须向后移动( )个元素。A. n-iB. n-i+1C. n-i-1D. i
在一个长度为n的顺序表中,在第i个元素(1≤i≤n+1)之前插入一个新元素时须向后移动( )个元素。
A. n-i
B. n-i+1
C. n-i-1
D. i
题目解答
答案
B. n-i+1
解析
考查要点:顺序表的插入操作中元素移动的规律。
解题核心:明确插入位置后,需移动的元素个数等于原表中从插入位置到末尾的元素个数。
关键点:
- 顺序表是连续存储的,插入操作需为新元素腾出空间。
- 插入位置为第i个元素前(1 ≤ i ≤ n+1),此时需移动的元素个数为 n - i + 1。
在顺序表中插入元素时,插入位置i后的所有元素需要依次向后移动一位。假设原表有n个元素,插入位置为第i个元素前,则:
- 插入位置i后的元素范围:从第i个元素到第n个元素。
- 元素个数计算:总共有 n - i + 1 个元素需要移动。
举例验证:
- 当i=1时,需移动n个元素(n - 1 + 1 = n)。
- 当i=n时,需移动1个元素(n - n + 1 = 1)。
- 当i=n+1时,无需移动元素(n - (n+1) + 1 = 0)。