![](https://lstatic.shangxueba.com/sxbzda/h5/images/m_q_title.png)
[主观题]
请教:数据结构练习试卷1第1大题第11小题如何解答?
【题目描述】
若一个栈以向量V[1..n)存储,且空栈的栈顶指针top为n+1,则将元素x入栈的正确操作是______。A.top=top+1;V[top]=x;
B.V[top]=x;top=top+1;
C.top=top-1;V[top]=x;
D.V[top]=x;top=top-1;
【我提交的答案】: C |
【参考答案与解析】: 正确答案:C |
解析:栈是运算受限的线性表,只允许在栈顶进行插入和删除操作。栈顶指针为n+1,说明该数组将栈顶放在了下标大的一端,所以,在进行入栈操作时,top指针应该进行减1操作。通常元素进栈的操作为:先移动栈顶指针,后存入元素。移动栈顶指针的操作是“top=top-1;”,存入元素的操作是“V[top]=x;”。本题正确答案为选项C。
这题目 选c 我怎么感觉是出栈的操作 先-- 再赋值, 进栈不应该是 先赋值再++吗? 还是我的题意没有弄明白 ,谢谢你的帮助
![](https://lstatic.shangxueba.com/sxbzda/h5/images/tips_org.png)