博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
leetcode 110 Balanced Binary Tree
阅读量:5074 次
发布时间:2019-06-12

本文共 1492 字,大约阅读时间需要 4 分钟。

Given a binary tree, determine if it is height-balanced.

For this problem, a height-balanced binary tree is defined as a binary tree in which the depth of the two subtrees of every node never differ by more than 1.

 

树的高度: Tree depth的定义:为当前节点左右subtree depth中的较大值加1.

// 判断左右子树是不是平衡,然后 左右子树的高度差不大于1

// 可以把树深度的返回 和 判断平衡树 放在一起

// 用一个特殊的返回值来代表不平衡,这样就少了一层的判断

// Tree depth的定义:为当前节点左右subtree depth中的较大值加1.

从根往上

1 class Solution { 2 public: 3     bool isBalanced(TreeNode* root) { 4         return dfs(root) == -1? false: true; 5     } 6     int dfs(TreeNode* root) 7     { 8         if (root == NULL) 9             return 0;10         int left = dfs(root -> left);11         int right = dfs(root -> right);12         if (left == -1 || right == -1|| abs(left - right) >1) return -1;13         return max(left,right) +1;14         15     }16 };

 

方法二: 

从上往下,但是会消耗跟多的时间

1 class Solution { 2 public: 3     bool isBalanced(TreeNode* root) { 4         if (root == NULL) 5             return true; 6         if (isBalanced(root->left) && isBalanced(root->right)) 7             return abs(dfs(root->left) - dfs(root->right)) >1 ? false:true;  8         return false;  9     }10     int dfs(TreeNode* root)11     {12         if (root == NULL)13             return 0;14         if (root ->left == NULL || root->right == NULL )15             return dfs(root->left) + dfs(root ->right) +1 ;16         return max(dfs(root->left),dfs(root->right))+1;17     }18 };

 

转载于:https://www.cnblogs.com/zhuguanyu33/p/4568218.html

你可能感兴趣的文章
(转载)重新对APK文件签名
查看>>
layui弹窗、字符串转一维数组
查看>>
Qt打包成单独可执行的exe文件
查看>>
test
查看>>
1.7 HelloWorld 添加视图
查看>>
设计模式-写在前面
查看>>
bat脚本学习
查看>>
asp.net应用程序脱机app_offline.htm文件
查看>>
XMind 入门教程
查看>>
ElasticSearch restful实操
查看>>
Python实现图片转文字并翻译至剪切板
查看>>
条件语句中出现多个OR的情况
查看>>
java List接口实现类
查看>>
遗忘的基础概念——并发、并行、进程、线程
查看>>
洛谷1094 纪念品分组
查看>>
php:自己设计的一个php验证码
查看>>
微信扫码支付
查看>>
[干货] 有了微信小程序,谁还学ReactNative?
查看>>
spark向量、矩阵类型
查看>>
bzoj 1177: [Apio2009]Oil
查看>>