目录
题目描述
思想
代码
题目描述
输入一棵二叉树的根节点,判断该树是不是平衡二叉树。如果某二叉树中任意节点的左右子树的深度相差不超过1,那么它就是一棵平衡二叉树。
示例示例 1:
给定二叉树 [3,9,20,null,null,15,7]
3 / 9 20 / 15 7
返回 true 。
思想 递归 代码class Solution { public boolean isBalanced(TreeNode root) { if(root == null){ return true; } int leftn = len(root.left); int rightn = len(root.right); return (Math.abs(rightn-leftn) <= 1)&&isBalanced(root.left)&&isBalanced(root.right); } public int len(TreeNode root){ if(root == null){ return 0; } int len1 = len(root.left); int len2 = len(root.right); return len1 >= len2 ? len1+1:len2+1; } }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)