题解 | #栈的压入、弹出序列#

栈的压入、弹出序列

http://www.nowcoder.com/practice/d77d11405cc7470d82554cb392585106

# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
# 
# @param pushV int整型一维数组 
# @param popV int整型一维数组 
# @return bool布尔型
#
class Solution:
    def IsPopOrder(self , pushV: List[int], popV: List[int]) -> bool:
        # write code here
        stack = []
        i = 0
        for ele in pushV:
            stack.append(ele)
            while stack and stack[-1] == popV[i]:  # 注意这里不能用ele == popV[i] 因为ele是在换一次while中是不变的,这样就失去了while的意义
                print(ele)
                stack.pop()
                i = i + 1
        if stack:
            return False
        else:
            return True
        

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务