栈的压入、弹出序列
思路:
使用一个辅助栈,遍历压入顺序压入辅助栈中,然后判断辅助栈顶元素是否和弹出序列元素是否相同,如果相同,则辅助栈弹出,并且判断弹出序列下一个元素。
转载:
https://www.cnblogs.com/GF66/p/9785462.html
# -*- coding:utf-8 -*-
class Solution:
def IsPopOrder(self, pushV, popV):
# write code here
if len(pushV) == 0:
return 0
stack = []
for e in pushV:
stack.append(e)
while stack and popV[0] == stack[-1]:
stack.pop()
popV.pop(0)
if len(stack) == 0:
return True
else:
return False