Golang | Leetcode Golang题解之第563题二叉树的坡度

题目:

题解:

Go 复制代码
func findTilt(root *TreeNode) (ans int) {
    var dfs func(*TreeNode) int
    dfs = func(node *TreeNode) int {
        if node == nil {
            return 0
        }
        sumLeft := dfs(node.Left)
        sumRight := dfs(node.Right)
        ans += abs(sumLeft - sumRight)
        return sumLeft + sumRight + node.Val
    }
    dfs(root)
    return
}

func abs(x int) int {
    if x < 0 {
        return -x
    }
    return x
}
相关推荐
jieyucx2 小时前
Go 语言进阶:构造函数、父子结构体与组合复用详解
服务器·算法·golang·继承·结构体·构造函数
如竟没有火炬2 小时前
字符串相乘——int数组转字符串
开发语言·数据结构·python·算法·leetcode·深度优先
朔北之忘 Clancy3 小时前
2026 年 3 月青少年软编等考 C 语言一级真题解析
c语言·开发语言·c++·学习·青少年编程·题解·一级
jieyucx5 小时前
Go语言通透教程:结构体定义与方法
服务器·数据库·golang·结构体
念何架构之路5 小时前
GoFrame类型转换详解
golang
YL200404265 小时前
046二叉树展开为链表
数据结构·leetcode·链表
如竟没有火炬7 小时前
至少有K个重复字符的最长子串
开发语言·数据结构·python·算法·leetcode·动态规划
水蓝烟雨8 小时前
2359. 找到离给定两个节点最近的节点
算法·leetcode
m0_502724958 小时前
golang 、java、c++、javascript 语言switch case异同
java·javascript·c++·golang
阿Y加油吧8 小时前
二刷动态规划经典题:从打家劫舍到完全平方数,Java 实现复盘与优化
leetcode