我是靠谱客的博主 顺利电话,这篇文章主要介绍python stack 判断出栈顺序,现在分享给大家,希望可以做个参考。

LeetCode 946 Validate Stack Sequences

思想:循环判断进栈序列,当进栈序列的值没有遇到与出栈序列相同时压栈,循环当栈不为空并且出栈序列的第一个值等于栈顶元素时出栈,出栈指针后移,若栈空则序列正确

class Solution(object):
    def validateStackSequences(self, pushed, popped):
        """
        :type pushed: List[int]
        :type popped: List[int]
        :rtype: bool
        """
        stack=[]
        num=len(pushed)
        p=0
        for x in pushed:
            stack.append(x)
            while stack and (stack[-1]==popped[p]):
                stack.pop()                
                p=p+1
        return not len(stack)                   

最后

以上就是顺利电话最近收集整理的关于python stack 判断出栈顺序的全部内容,更多相关python内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(116)

评论列表共有 0 条评论

立即
投稿
返回
顶部