当前位置: 代码迷 >> C语言 >> 这条堆栈的问题,我做得正确吗?
  详细解决方案

这条堆栈的问题,我做得正确吗?

热度:114   发布时间:2005-03-27 13:49:00.0
这条堆栈的问题,我做得正确吗?
在堆栈操作过程中,如果变量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

根据栈的特点,出栈的结果是否A=4,B=3,C=2呢?请高手指点,谢谢!

[此贴子已经被作者于2005-3-27 13:49:55编辑过]

搜索更多相关的解决方案: 堆栈  

----------------解决方案--------------------------------------------------------
我认为是对的!
----------------解决方案--------------------------------------------------------
偶也统一楼上的观点!按照进栈的顺序,应该如此!
----------------解决方案--------------------------------------------------------
不行啊!
PUSH A
PUSH B
PUSH C
POP  A
POP  B
POP  C

C是最后压进的,怎么能先弹出A呢?
----------------解决方案--------------------------------------------------------
晕去!!!
----------------解决方案--------------------------------------------------------
栈是先进后出,堆是先进先出!!!
应该是错了!
----------------解决方案--------------------------------------------------------
楼主说的栈,而不是队列哦
----------------解决方案--------------------------------------------------------
不对  a先进栈  a就不可能先被pop出来
----------------解决方案--------------------------------------------------------
  相关解决方案