剑指offer--入栈、出栈正确性的判断

博客内容讲述了如何判断一个给定的入栈和出栈序列是否合法。通过创建辅助栈模拟实际操作,对比入栈和出栈序列,确保每次出栈的元素与序列匹配,最终得出合法性的结论。
摘要由CSDN通过智能技术生成

判断元素出栈、 入栈顺序的合法性。 如: 入栈的序列(1,2,3,4,5) , 出栈序列 是(4,5,3,2,1) 是合法序列, 入栈的序列(1,2,3,4,5) , 出栈序列为(1,5,3,2,4) 是不合法序列

我的解题思路:创建一个辅助栈来模拟入栈与出栈过程,从而判断其入栈、出栈顺序是否合法。定义两个数组In与Out分别存储入栈序列与出栈序列,然后将入栈序列的第一个元素压入辅助栈,然后取栈顶元素,与出栈的第一个元素进行比较,如果不相等,则继续 讲In中的后序元素压入栈中,直到相等时,将辅助栈中元素pop,并且将出栈序列的后序元素进行比较。如果最后将出栈序列的元素已经比较完,并且辅助栈为空则出入栈合法。我用图简

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值