题目链接:https://leetcode-cn.com/problems/zhan-de-ya-ru-dan-chu-xu-lie-lcof/
难度:中等

描述:
输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如,序列 {1,2,3,4,5} 是某栈的压栈序列,序列 {4,5,3,2,1} 是该压栈序列对应的一个弹出序列,但 {4,3,5,1,2} 就不可能是该压栈序列的弹出序列。

题解

  1. class Solution:
  2. def validateStackSequences(self, pushed: List[int], popped: List[int]) -> bool:
  3. temp = []
  4. ptr = 0
  5. for i in pushed:
  6. temp.append(i)
  7. while temp != [] and temp[-1] == popped[ptr]:
  8. temp.pop()
  9. ptr += 1
  10. return temp == []