ToB企服应用市场:ToB评测及商务社交产业平台

标题: LeetCode:110.平衡二叉树 [打印本页]

作者: 三尺非寒    时间: 2024-12-24 05:47
标题: LeetCode:110.平衡二叉树
跟着carl学算法,本系列博客仅做个人纪录,发起大家都去看carl本人的博客,写的真的很好的!
代码随想录
    LeetCode:110.平衡二叉树
给定一个二叉树,判断它是否是
平衡二叉树
示例 1:

输入:root = [3,9,20,null,null,15,7]
输出:true
示例 2:

输入:root = [1,2,2,3,3,null,null,4,4]
输出:false
示例 3:
输入:root = []
输出:true
  在一个递归里面即取求高度也去判断是否平衡
  1.         public boolean isBalanced(TreeNode root) {
  2.         return getHeight(root) != -1;
  3.     }
  4.     private int getHeight(TreeNode root) {
  5.         if (root == null)
  6.             return 0;
  7.         int leftHeight = getHeight(root.left);
  8.         if (leftHeight == -1)
  9.             return -1;
  10.         int rithtHeight = getHeight(root.right);
  11.         if (rithtHeight == -1)
  12.             return -1;
  13.         int res = 0;
  14.         if (Math.abs(leftHeight - rithtHeight) > 1)
  15.             return -1;
  16.         else
  17.             return 1 + Math.max(leftHeight, rithtHeight);
  18.     }
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4