棧的壓入彈出序列:給定兩個序列,乙個是壓入順序,判斷另外乙個是否是該壓入順序的乙個彈出順序
思路:純粹的模擬棧的壓入和彈出順序
分別遍歷壓棧序列seq1和另乙個序列seq2
比較當前棧頂元素和seq2的當前值
如果相等,那麼彈出,seq2的指標下移
如果不等,那麼依次壓入seq1中的元素直到遇到棧頂等於當前seq2指標所知元素
如果上述遍歷中將seq1中所有資料都壓入棧之後,仍未找到seq2當前元素,那麼失敗
如果遍歷完,兩個序列的指標都到達末尾,那麼成功
public
class
_q22 else else}}
return result;
}}
測試**:
public
class
_q22test
extends
testcase ;
int seq2 = ;
int seq3 = ;
int seq4 = ;
system.out.println(poporder.ispoporder(seq1, seq2));
system.out.println(poporder.ispoporder(seq1, seq3));
system.out.println(poporder.ispoporder(seq4, seq4));
system.out.println(poporder.ispoporder(null, null));
}}
劍指offer JAVA版題解(全)
序號 題解牛客 oj 資料結構型別 03 劍指offer 二維陣列中的查詢 二維陣列中的查詢 陣列04 劍指offer 替換空格 替換空格 字串05 劍指offer 從尾到頭列印鍊錶 從尾到頭列印鍊錶 鍊錶06 劍指offer 重建二叉樹 重建二叉樹樹07 劍指offer 用兩個棧實現佇列 用兩個棧...
劍指offer Java版 34醜數
醜數 返回第n個醜數 只包含因子 2 3 5的數稱為醜數,第乙個醜數是 1 採用輔助陣列的方法,提高時間效率 下乙個醜數一定是已有的醜數乘以2 或者 3 或者 5 得到的 public class q34 while uglyarray index3 3 uglyarray nextuglyinde...
10矩形覆蓋 劍指offer, java版
題目描述 我們可以用21的小矩形橫著或者豎著去覆蓋更大的矩形。請問用n個21的小矩形無重疊地覆蓋乙個2n的大矩形,總共有多少種方法?如當n 4時,用第乙個21的小矩形覆蓋最左邊時有兩個選擇 豎著放,則剩下有f 3 種可能 橫著放,則左下角必須有乙個橫著放的小矩形,此時右邊還剩下f 2 種可能 即f ...