給定乙個二叉搜尋樹(binary search tree),把它轉換成為累加樹(greater tree),使得每個節點的值是原來的節點值加上所有大於它的節點值之和。
例如:
輸入: 二叉搜尋樹:
5/ \
2 13
輸出: 轉換為累加樹:
18/ \
20 13
根據二叉搜尋樹的性質,右子樹的值 > 根 > 左子樹的,所以根只用加上其右子樹的值,所以先把根的值累加算出來,這樣左子樹只要加上已經累加過的根的值就行了。
public treenode convertbst(treenode root)
private int convert(treenode root,int sum)
把二叉搜尋樹轉換為累加樹
開始行動,你已經成功一半了,獻給正在奮鬥的我們 給定乙個二叉搜尋樹 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 二叉搜尋的特性,左結點小於根節點,根節點小於...