驗證棧序列

2021-10-11 15:51:06 字數 941 閱讀 6162

驗證棧序列

輸入兩個整數序列,第乙個序列表示棧的壓入順序,請判斷第二個序列是否為該棧的彈出順序。假設壓入棧的所有數字均不相等。例如,序列 是某棧的壓棧序列,序列 是該壓棧序列對應的乙個彈出序列,但 就不可能是該壓棧序列的彈出序列。

示例 1:

輸入:pushed = [1,2,3,4,5], popped = [4,5,3,2,1]輸出:true解釋:我們可以按以下順序執行:

push(1), push(2), push(3), push(4), pop() -> 4,

push(5), pop() -> 5, pop() -> 3, pop() -> 2, pop() -> 1

示例 2:

輸入:pushed = [1,2,3,4,5], popped = [4,3,5,1,2]輸出:false解釋:1 不能在 2 之前彈出

我的思路:

public boolean validatestacksequences(int pushed, int popped)  else if (i < pushed.length)  else 

}return true;

}

思路二

public boolean validatestacksequences(int pushed, int popped) 

}return stack.isempty();

}

驗證棧序列

給定 pushed 和 popped 兩個序列,只有當它們可能是在最初空棧上進行的推入 push 和彈出 pop 操作序列的結果時,返回 true 否則,返回 false 0 pushed.length popped.length 1000 0 pushed i popped i 1000 push...

驗證棧序列

對乙個空棧進行 push 和 pop 操作各 n 次,使得 1 n 每個數都被 push 和 pop 一次,n 次 push 的數按照順序形成排列 a,n 次 pop 的數按照順序形成排列 b,此時稱 a 和 b 互為 棧轉化序列 input 612 3456 5643 21output truee...

946 驗證棧序列

給定pushed和popped兩個序列,只有當它們可能是在最初空棧上進行的推入 push 和彈出 pop 操作序列的結果時,返回true 否則,返回false。示例 1 輸入 pushed 1,2,3,4,5 popped 4,5,3,2,1 輸出 true 解釋 我們可以按以下順序執行 push ...