把二叉搜尋樹轉換為累加樹

2021-10-09 15:50:17 字數 861 閱讀 5824

開始行動,你已經成功一半了,獻給正在奮鬥的我們

給定乙個二叉搜尋樹(binary search tree),把它轉換成為累加樹(greater tree),使得每個節點的值是原來的節點值加上所有大於它的節點值之和。

例如:

輸入: 原始二叉搜尋樹:

5/ \

2 13

輸出: 轉換為累加樹:

18/ \

20 13

這道題比較簡單,乙個二叉搜尋樹的中序遍歷結果就是從小到大的乙個陣列,這道題的要求就是將樹上的每乙個節點加上比它大的節點的值,name我們反序中序遍歷整個二叉樹,就是從到到小的陣列,這樣做的好處就是,小的節點加的時候大的節點已經都計算完畢了,而最大的節點是不用加其他節點的值的。另外我們需要頂乙個全域性變數來記錄比當前節點大的節點的值的和。即可完成解題。

把二叉搜尋樹轉換為累加樹

給定乙個二叉搜尋樹 binary search tree 把它轉換成為累加樹 greater tree 使得每個節點的值是原來的節點值加上所有大於它的節點值之和。例如 輸入 二叉搜尋樹 5 2 13 輸出 轉換為累加樹 18 20 13根據二叉搜尋樹的性質,右子樹的值 根 左子樹的,所以根只用加上其...

538 把二叉搜尋樹轉換為累加樹

給定乙個二叉搜尋樹 binary search tree 把它轉換成為累加樹 greater tree 使得每個節點的值是原來的節點值加上所有大於它的節點值之和。例如 輸入 二叉搜尋樹 5 2 13 輸出 轉換為累加樹 18 20 13 和 的應用 用 傳入某值的位址,可以保留函式中修改的資料 de...

538 把二叉搜尋樹轉換為累加樹

題目描述 給定乙個二叉搜尋樹 binary search tree 把它轉換成為累加樹 greater tree 使得每個節點的值是原來的節點值加上所有大於它的節點值之和。例如 輸入 原始二叉搜尋樹 輸出 轉換為累加樹 方法1 在原樹上修改 主要思路 1 二叉搜尋的特性,左結點小於根節點,根節點小於...