33 二叉搜尋樹的後序遍歷

2021-08-21 22:20:38 字數 476 閱讀 9707

二叉搜尋樹:任意節點,左子樹所有的節點比根節點小,右子樹的所有節點比根節點大。

題目:輸入乙個整數陣列,判斷該陣列是不是某二叉搜尋樹的後序遍歷的結果。如果是則輸出yes,否則輸出no。假設輸入的陣列的任意兩個數字都互不相同。

思路:1。後序遍歷,先找到根節點,最後乙個數

2.判斷第乙個數是否小於根節點,若是,說明有左子樹,向後遍歷,直到大於根節點,則為右子樹的開始元素

3.繼續遍歷,若出現小於根節點的數,說明不是二叉搜尋樹,若沒有,則呼叫遞迴,將儲存的左子樹和右子樹分別呼叫該函式,當所     有遞迴完成,說明為二叉搜尋樹。

**:

class solution 

int j=i;

for(;jverifysquenceofbst(leftseq);

verifysquenceofbst(rightseq);

return true;

}};

33 二叉搜尋樹的後序遍歷序列

擴充套件題 leetcode 1008.前序遍歷構造二叉搜尋樹 舉一反三 輸入乙個整數陣列,判斷該陣列是不是某二叉搜尋樹的後序遍歷結果。如果是則返回true,否則返回false。假設輸入的陣列的任意兩個數字都互不相同。5 2 6 13示例 1 輸入 1,6,3,2,5 輸出 false 示例 2 輸...

二叉搜尋樹的後序遍歷

二叉搜尋樹的後序遍歷序列中,最後乙個值是根結點,前面比根節點小的是左結點,後面比根結點大的是右結點。include include bool verifysquenceofbst int sequence,int length int root sequence length 1 int i 0 在...

二叉搜尋樹的後序遍歷

描述 輸入乙個整數陣列,判斷該陣列是不是某二叉搜尋樹的後序遍歷。如果是,則輸出yes,否則輸出no。假設輸入的陣列的任意兩個數字都互不相同。1 樣例輸入 5 7 6 9 11 10 8 1 樣例輸出 yes 2 樣例輸入 7 4 6 5 2 樣例輸出 no 首先要知道二叉搜尋樹的定義 或者是一棵空樹...