劍指offer第23題 二叉搜尋樹的後序遍歷序列

2021-09-29 23:37:42 字數 413 閱讀 8221

題目描述

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

思路:左節點,右節點,根節點是後序遍歷的順序。那麼,左子樹都小於根節點,右子樹都大於根節點。

public

class

solution

private

boolean

helper

(int

sequence,

int l,

int r)

return

helper

(sequence,l,i-1)

&&helper

(sequence,i,r-1)

;}}

劍指offer 程式設計題23(從上往下列印二叉樹)

public static class binarytreenode這道題實質是考查樹的遍歷演算法。從上到下列印二叉樹的規律 每一次列印乙個結點的時候,如果該結點有子結點,則把該結點的子結點放到乙個佇列的末尾。接下來到佇列的頭部取出最早進入佇列的結點,重複前面的列印操作,直至佇列中所有的結點都被列印...

劍指offer 第26題 二叉搜尋樹與雙向鍊錶

輸入一棵二叉搜尋樹,將該二叉搜尋樹轉換成乙個排序的雙向鍊錶。要求不能建立任何新的結點,只能調整樹中結點指標的指向。中序遍歷可以得到二叉搜尋樹的從小到大排序,存在列表裡 class solution def convert self,prootoftree write code here if not...

劍指offer第24題 二叉搜尋樹的後序遍歷序列

輸入乙個整數陣列,判斷該陣列是不是某二叉搜尋樹的後序遍歷結果。如果是則返回 true,否則返回 false。假設輸入的陣列的任意兩個數字都互不相同。5 2 6 1 3 示例 1 輸入 1,6,3,2,5 輸出 false 示例 2 輸入 1,3,2,6,5 輸出 true 陣列長度 1000 思路 ...