判斷棧的彈出序列

2021-07-07 06:19:38 字數 528 閱讀 4139

題目描述

輸入兩個整數序列,第乙個序列表示棧的壓入順序,請判斷第二個序列是否為該棧的彈出順序。

假設壓入棧的所有數字均不相等。

例如序列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,

*/bool ispoporder(vectorpushv, vectorpopv)

} return s.empty();

}

判斷棧的壓入,彈出序列

輸入兩個整數序列,第乙個序列表示棧的壓入順序,請判斷第二個序列是否為該棧的彈出順序。假設壓入棧的所有數字均不相等。例如序列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則不可能是合法的彈出序列。問題出自 劍指offer 面試題22。解題 思路...

JS實現判斷棧的壓入 彈出序列

作為前端,接觸演算法的機會可能比較少,但是我們腦子可不能鏽了 一道題目 輸入兩個整數序列,第乙個序列表示棧的壓入順序,判斷第二個序列是否為該棧的彈出順序。假設壓入棧的所有數字均不相等。例如 1,2,3,4,5是某個棧的壓入順序,序列4,5,3,2,1是該棧對應的乙個彈出序列,但4,3,5,1,2就不...