4.栈的压入弹出序列

题目描述

输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。


代码:


参考代码


第一个序列不断的压栈,然后A栈顶和B的开头比较,如果相等,那么就把data的栈顶弹出,然后B的指针加一;如果不相等,那么在继续把A的元素压栈data。直到最后,判断栈data是否都弹出,如果都弹出,说明B是A的出栈顺序,否则不是正确的顺序。


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容