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

2021-10-09 15:54:25 字數 740 閱讀 1592

題目鏈結

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

例如:輸入: 原始二叉搜尋樹:

5

/ \

2 13

輸出: 轉換為累加樹:

18

/ \

20 13

將每個點的權值存入乙個陣列然後排序,計算字首和,然後再對每個點二分比它大的點的位置,更新結點即可,ac**如下:

/**

* definition for a binary tree node.

* struct treenode

* };

*/class

solution

}sort

(v.begin()

,v.end()

);sum.

push_back(0

);for(

auto i:v) sum.

push_back

(sum.

back()

+i);

q.push

(root)

;while

(!q.

empty()

)}return root;}}

;

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

給定乙個二叉搜尋樹 binary search tree 把它轉換成為累加樹 greater tree 使得每個節點的值是原來的節點值加上所有大於它的節點值之和。輸入 原始二叉搜尋樹 5 2 13 輸出 轉換為累加樹 18 20 13二叉搜尋樹是一棵空樹,或者是具有下列性質的二叉樹 1 若它的左子樹...

Leetcode 538 二叉樹轉換為累加樹

time 20190907 type easy 給定乙個二叉搜尋樹 binary search tree 把它轉換成為累加樹 greater tree 使得每個節點的值是原來的節點值加上所有大於它的節點值之和。例如 輸入 二叉搜尋樹 5 213輸出 轉換為累加樹 18 2013bst的中序遍歷是乙個...

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

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