題目描述
輸入兩個整數序列,第一個序串列示堆疊的壓入順序,請判斷第二個序列是否可能為該堆疊的彈出順序,假設壓入堆疊的所有數字均不相等,例如序列1,2,3,4,5是某堆疊的壓入順序,序列4,5,3,2,1是該壓堆疊序列對應的一個彈出序列,但4,3,5,1,2就不可能是該壓堆疊序列的彈出序列,(注意:這兩個序列的長度是相等的)解題思路:
# -*- coding:utf-8 -*- class Solution: def IsPopOrder(self, pushV, popV): stack = [] while popV: if stack and stack[-1] == popV[0]: stack.pop() popV.pop(0) elif pushV: stack.append(pushV.pop(0)) else: return False return True
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/3869.html
標籤:其他
