輸入乙個整數陣列,判斷該陣列是不是某二叉搜尋樹的後序遍歷結果。如果是則返回 true,否則返回 false。假設輸入的陣列的任意兩個數字都互不相同。
5/ \
2 6
/ \1 3
示例 1:
輸入: [1,6,3,2,5]
輸出: false
classsolution:
def verifypostorder(self, postorder: list[int]) ->bool:
stack =
root = float('
inf'
)
for i in range(len(postorder)-1, -1, -1):
if postorder[i] >root:
return
false
while stack and stack[-1] >postorder[i]:
root =stack.pop()
return
true
33 二叉搜尋樹的後序遍歷序列
擴充套件題 leetcode 1008.前序遍歷構造二叉搜尋樹 舉一反三 輸入乙個整數陣列,判斷該陣列是不是某二叉搜尋樹的後序遍歷結果。如果是則返回true,否則返回false。假設輸入的陣列的任意兩個數字都互不相同。5 2 6 13示例 1 輸入 1,6,3,2,5 輸出 false 示例 2 輸...
《劍指offer》 33 二叉樹的後序遍歷序列
輸入乙個整數陣列,判斷該陣列是不是某二叉搜尋樹的後序遍歷的結果。如果是則輸出yes,否則輸出no。假設輸入的陣列的任意兩個數字都互不相同。思路 public class solution public boolean verify int sequence,int start,int end 前面選...
33 二叉搜尋樹的後序遍歷
二叉搜尋樹 任意節點,左子樹所有的節點比根節點小,右子樹的所有節點比根節點大。題目 輸入乙個整數陣列,判斷該陣列是不是某二叉搜尋樹的後序遍歷的結果。如果是則輸出yes,否則輸出no。假設輸入的陣列的任意兩個數字都互不相同。思路 1。後序遍歷,先找到根節點,最後乙個數 2.判斷第乙個數是否小於根節點,...