牛客網15 棧的壓入 彈出序列

2021-08-20 23:28:15 字數 569 閱讀 4421

題目描述

輸入兩個整數序列,第乙個序列表示棧的壓入順序,請判斷第二個序列是否為該棧的彈出順序。假設壓入棧的所有數字均不相等。例如序列1,2,3,4,5是某棧的壓入順序,序列4,5,3,2,1是該壓棧序列對應的乙個彈出序列,但4,3,5,1,2就不可能是該壓棧序列的彈出序列。(注意:這兩個序列的長度是相等的)

class

solution:

defispoporder

(self, pushv, popv):

# write code here

ifnot pushv or len(pushv)!=len(popv):

return

false

stack=

for i in pushv:

while len(stack) and stack[-1] == popv[0]:

stack.pop()

popv.pop(0)

if len(stack):

return

false

return

true

牛客網 棧的壓入 彈出序列

題目大意,給出兩個序列乙個代表壓入序列,乙個代表彈出序列,判斷這是否是乙個合理的彈出序列。一開始看到這個問題的時候直接想到了二叉樹的先序中序,構造後續 我也不知道我的思路為什麼這麼清奇 後來發現自己的思路歪了,然後簡單的認為只需要判斷彈出序列中,在判斷某個數是否合理時,只需要判斷在他之前彈出的數是否...

牛客網 棧的壓入 彈出序列

題目描述 輸入兩個整數序列,第乙個序列表示棧的壓入順序,請判斷第二個序列是否可能為該棧的彈出順序。假設壓入棧的所有數字均不相等。例如序列1,2,3,4,5是某棧的壓入順序,序列4,5,3,2,1是該壓棧序列對應的乙個彈出序列,但4,3,5,1,2就不可能是該壓棧序列的彈出序列。注意 這兩個序列的長度...

牛客之棧的壓入彈出序列

題目描述 輸入兩個整數序列,第乙個序列表示棧的壓入順序,請判斷第二個序列是否可能為該棧的彈出順序。假設壓入棧的所有數字均不相等。例如序列1,2,3,4,5是某棧的壓入順序,序列4,5,3,2,1是該壓棧序列對應的乙個彈出序列,但4,3,5,1,2就不可能是該壓棧序列的彈出序列。注意 這兩個序列的長度...