当前位置: 代码迷 >> 综合 >> 算法刷题之判断是否平衡二叉树
  详细解决方案

算法刷题之判断是否平衡二叉树

热度:86   发布时间:2024-02-11 19:51:49.0

判断一棵树是否是平衡二叉树,不考虑排序性,只考虑平衡性,也就是二叉树的所有左子树和右子树的深度差不超过1。

package tree;public class BalanceTree {public static boolean IsBalanced_Solution(TreeNode root) {int left = getTreeDeepth(root.left);int right = getTreeDeepth(root.right);int minus = Math.abs(left-right);return minus<=1 && IsBalanced_Solution(root.left) && IsBalanced_Solution(root.right);}private static int getTreeDeepth(TreeNode left) {if(left==null){return 0;}return Math.max(getTreeDeepth(left.left),getTreeDeepth(left.right))+1;}
}

 

  相关解决方案