题解 | #栈的压入、弹出序列#
栈的压入、弹出序列
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