题目
不论是入队列操作还是入栈操作,在顺序存储结构上都需要考虑“溢出”情况。( )A. 对B. 错
不论是入队列操作还是入栈操作,在顺序存储结构上都需要考虑“溢出”情况。( )
A. 对
B. 错
题目解答
答案
B. 错
解析
考查要点:本题主要考查顺序存储结构下栈和队列的入操作是否都需要考虑溢出问题。
关键思路:
- 栈在顺序存储结构中,入栈操作必须检查栈是否已满,否则会导致溢出。
- 队列的实现方式不同会影响溢出情况:
- 普通队列(非循环队列)在顺序存储中,尾指针到达数组末尾时会溢出,即使队列未满。
- 循环队列通过取模运算利用空闲空间,只有当整个数组被占满时才会溢出。
结论:题目中的“顺序存储结构”未明确队列类型,但通常默认普通队列。然而,栈必须考虑溢出,而队列在循环队列实现下可能减少溢出频率,因此题目表述不准确。
题目核心:判断栈和队列的入操作是否都需要考虑溢出。
- 栈的入操作:
- 栈在顺序存储结构中,入栈时需检查栈顶指针是否已到数组末尾。若已满,则无法入栈,必须处理溢出。
- 队列的入操作:
- 普通队列:尾指针到达数组末尾时,即使队列未满,也无法入队,需处理溢出。
- 循环队列:通过循环利用空闲空间,只有当整个数组被占满时才会溢出,溢出情况较少。
关键区别:栈必须每次入栈都检查溢出,而队列在循环队列实现下可能减少溢出频率。因此,题目中“都需要考虑溢出”的表述错误。