设栈的初始为空,元素a,b,c,d,e,f,g依次入栈,以下出栈序列不可能出现的是

A,a,b,c,d,e,f,gB,f,c,a,b,e,g,dC,d,c,f,e,b,a,gD,a,e,d,c,b,f,g求解释... A,a,b,c,d,e,f,g
B,f,c,a,b,e,g,d
C,d,c,f,e,b,a,g
D,a,e,d,c,b,f,g
求解释
展开
 我来答
熊家懒懒
2012-03-25
知道答主
回答量:3
采纳率:0%
帮助的人:2.2万
展开全部
B 不可能
A: a进a出 --> b进b出 --> c进c出 以此类推
C:a,b,c,d依次进栈 --> d出 c出 --> e,f进 --> f,e,b,a 依次出 -->最后g进g出
D:a进a出 -->b,c,d,e依次进栈 --> e,d,c,b 依次出栈 --> f进f出 --> g进g出

总之遵循 先进先出 的原则
还是不明白的话 可以画个图 一层层放 后进的放在最上面 最上面的必须先出
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
零度数码师总管
2012-04-05 · TA获得超过176个赞
知道答主
回答量:71
采纳率:0%
帮助的人:18.8万
展开全部
应该是B,不可能。
首先看A,根据后进先出,可以依次进马上出,就是:a进->a出,b进—>b出......就这样。
然后看C,先是d那么a,b,c已经入栈,那就是:出d,c;再入e,f,再出f,e;然后出b,a;最后入g出g
最后看D, 入a出a,由于a后是e,所以b,c,d已经入栈,现出e再出d,c,b,最后进f出f,进g出g。
我们来看B,为什么不可能呢,因为,首先是f,那么可知a~e已经入栈出f后只能再出e,在e,d没有出栈的情况下,c不能出栈。
总体上根据“后进先出”的原则。依次判断
在栈顶入栈,在栈尾出栈!

参考资料: http://book.51cto.com/art/201003/189244.htm

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式