用中间的一个数组cur模拟压栈,然后和poped匹配,不能匹配的时候就继续进行压栈操作,如果最后cur为空就证明成功
class Solution:
def validateStackSequences(self, pushed: List[int], popped: List[int]) -> bool:
cur = []
j = 0
for i in range(len(pushed)):
cur.append(pushed[i])
while cur and cur[-1] == popped[j]:
cur.pop()
j += 1
if len(cur) == 0:
return True
else:
return False