这条堆栈的问题,我做得正确吗?
在堆栈操作过程中,如果变量A=2,B=3,C=4,执行下述指令后,结果A,B,C的值分别是多少?(PUSH为压栈,即进栈;POP为弹出,即出栈)
PUSH A
PUSH B
PUSH C
POP A
POP B
POP C
我是这样想的,栈的特点是:先进后出(FILO――First In Last Out),那么,如下图所示,进栈时为这样
C=4 |
B=3 |
A=2 |
[此贴子已经被作者于2005-3-27 13:49:55编辑过]
搜索更多相关的解决方案:
堆栈
----------------解决方案--------------------------------------------------------
我认为是对的!
----------------解决方案--------------------------------------------------------
偶也统一楼上的观点!按照进栈的顺序,应该如此!
----------------解决方案--------------------------------------------------------
不行啊!
PUSH A
PUSH B
PUSH C
POP A
POP B
POP C
C是最后压进的,怎么能先弹出A呢?
----------------解决方案--------------------------------------------------------
晕去!!!
----------------解决方案--------------------------------------------------------
栈是先进后出,堆是先进先出!!!
应该是错了!
----------------解决方案--------------------------------------------------------
楼主说的栈,而不是队列哦
----------------解决方案--------------------------------------------------------
不对 a先进栈 a就不可能先被pop出来
----------------解决方案--------------------------------------------------------