一个栈的入栈序列为ABCDEF,则不可能的出栈序列是

技术之瞳 阿里巴巴技术笔试心得习题2.65: 
  一个栈的入栈序列为ABCDEF,则不可能的出栈序列是(D) 
  A、DEFCBA    B、DCEFBA    C、FEDCBA 
  D、FECDBA    E、ABCDEF    F、ADCBFE

  分析: 
  该题主要是考虑栈的核心思想是先进后出,并且需要注意入栈和出栈的顺序是未知的,例如你可以先入栈ABCD,然后出栈D,然后入栈E,出栈E,入栈F,出栈F,然后CBA依次出栈,也就是A选项的情况。 
  这里有一规律可记 
  任何出栈的元素后面出栈的元素必须满足以下三点: 
  1、在原序列中相对位置比它小的,必须是逆序; 
  2、在原序列中相对位置比它大的,顺序没有要求; 
  3、以上两点可以间插进行。

  我们再看选项D的出栈顺序FECDBA,明显出栈元素F后面的元素C和D不满足上面规律1,所以选项D是错误的,其它答案都是满足的。

posted @   李学文  阅读(2610)  评论(0编辑  收藏  举报
编辑推荐:
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 用 C# 插值字符串处理器写一个 sscanf
· Java 中堆内存和栈内存上的数据分布和特点
阅读排行:
· 为DeepSeek添加本地知识库
· 精选4款基于.NET开源、功能强大的通讯调试工具
· DeepSeek智能编程
· 大模型工具KTransformer的安装
· [计算机/硬件/GPU] 显卡
levels of contents
点击右上角即可分享
微信分享提示