33 二叉樹的後序遍歷序列

2022-08-03 21:12:15 字數 558 閱讀 2462

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

5/ \

2 6

/ \1 3

示例 1:

輸入: [1,6,3,2,5]

輸出: false

class

solution:

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.判斷第乙個數是否小於根節點,...