064_把二叉搜索树转换为累加树

知识点:DFS、二叉搜索树

LeetCode第五百三十八题:https://leetcode-cn.com/problems/convert-bst-to-greater-tree/submissions/

语言:GoLang

/**
 * Definition for a binary tree node.
 * type TreeNode struct {
 *     Val int
 *     Left *TreeNode
 *     Right *TreeNode
 * }
 */
var sum int
func convertBST(root *TreeNode) *TreeNode {
    sum = 0
    dfs(root)
    return root
}

func dfs(root *TreeNode) {
    if root != nil {
        dfs(root.Right)
        sum += root.Val
        root.Val = sum
        dfs(root.Left)
    }
}
posted @ 2020-07-12 15:31  Cenyol  阅读(127)  评论(0编辑  收藏  举报