深度优先遍历,时间复杂度 O(n) 空间复杂度 O(n)
/*** Definition for a binary tree node.* type TreeNode struct {* Val int* Left *TreeNode* Right *TreeNode* }*/func findTilt(root *TreeNode) (ans int) {var dfs func(*TreeNode) intdfs = 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}
