package main import . "nc_tools" /* * type TreeNode struct { * Val int * Left *TreeNode * Right *TreeNode * } */ /** * * @param pRoot TreeNode类 * @return bool布尔型 */ func IsBalanced_Solution( pRoot *TreeNode ) bool { // write code here res := true var dfs func(node *TreeNode) int dfs = func(node *TreeNode) int { if node == nil { return 0 } left := dfs(node.Left) right := dfs(node.Right) if abs(left, right) > 1 { res = false } return max(left, right) + 1 } dfs(pRoot) return res } func max(a, b int) int { if a > b { return a } return b } func abs(a, b int) int { if a > b { return a - b } return b - a }