棧的壓入、彈出序列剛開始沒明白題意, 後來才知道是把序列依次壓進棧中, 不過中間可以有彈出的操作, 最後彈出元素的順序要和第二列的元素順序相同題目描述
輸入兩個整數序列,第乙個序列表示棧的壓入順序,請判斷第二個序列是否可能為該棧的彈出順序。假設壓入棧的所有數字均不相等。例如序列1,2,3,4,5是某棧的壓入順序,序列4,5,3,2,1是該壓棧序列對應的乙個彈出序列,但4,3,5,1,2就不可能是該壓棧序列的彈出序列。(注意:這兩個序列的長度是相等的)
沒想出來(明白題意後也沒有想出來:(
), 看書+牛客討論, 只要第二列頭元素不與第一列的頭元素相同, 就把第一列元素持續壓入棧中, 相同則把棧中的元素彈出, 開始比較第二列的下乙個元素, 最後當把第一列元素壓完後, 結束迴圈, 根據判斷棧中的元素是否彈完來判斷返回結果
class solution
stackmystack;
for(int i = 0,j = 0 ;i < pushv.size();)
}return mystack.empty();
}};
牛客網上是用vector模仿stack, 多學了兩個vector的方法
class solution
}return mystack.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就不可能是該壓棧序列的彈出序列。bool ispoporder cons...
棧的壓入彈出序列
1.問題描述 輸入兩個整數序列,第乙個序列表示棧的壓入序列,請判斷第二個序列是否為該棧的彈出序列。假設壓入棧的所有數字均不相等。例如序列1,2,3,4,5是某棧的壓棧序列,序列4,5,3,2,1是該棧序列對應的乙個彈出序列,但 4,3,5,1,2,就不可能是該壓棧序列的彈出序列。來自 劍指offer...