若长度为n的非空线性表采用顺序存储结构,在表的第i个位置插入一个数据元素,则i的合法值应该是()

若长度为n的非空线性表采用顺序存储结构,在表的第i个位置插入一个数据元素,则i的合法值应该是()
A.1≤i≤n B.1≤i≤n+1 C.0≤i≤n-1 D.0≤i≤n

答案放后面。
首先要了解线性表结构有两个参数长度length和最大长度Maxsize。
后者是提前定义的线性表最长可以有多长,前者是线性表目前的长度。
就像后者是空盒子的体积,前者是已经装了东西的体积。
长度为n,对应线性表下标范围则是0到n-1。
就是现在已经有了n个元素,第n个元素下标为n-1。
题目中的i不是下标,用第x个的表述,x最小取1,也就是第1个,没有第0个的说法。
所以i最小取到1。
易错的地方在于i的最大值。
答案选B。
有人认为length可能已经是MaxSize了,就是盒子已经装满了,装不下了。因为题目没给length是否等于MaxSize,所以有人认为不严谨。
严谨不严谨就不讨论了,但是根据题目意思,是插入操作,只要还能进行插入操作,length肯定是小于MaxSize的。
所以i在线性表表尾插入是完全没问题的。

下面是答案解释,摘自某本书:
线性表元素的序号是从1开始,而在第n+1个位置插入相当于在表尾追加。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值