leetcode 110. Balanced Binary Tree
来源:互联网 发布:java必读的5本书 编辑:程序博客网 时间:2024/06/06 02:52
原题:检测一个二叉树是不是平衡二叉树
代码如下:
bool isBalanced(struct TreeNode* root) { void setdepth(struct TreeNode*); if(root==NULL) return true; setdepth(root); if(root->left!=NULL&&root->right!=NULL) { if(abs(root->left->val-root->right->val)>1) return false; return isBalanced(root->left)&&isBalanced(root->right); } else if(root->left!=NULL) { if(root->left->val>1) return false; return isBalanced(root->left); } else if(root->right!=NULL) { if(root->right->val>1) return false; return isBalanced(root->right); } else { return true; } return true;}void setdepth(struct TreeNode* root){ int max(int,int); if(root->left!=NULL&&root->right!=NULL) { setdepth(root->left); setdepth(root->right); root->val=max(root->left->val,root->right->val)+1; } else if(root->left!=NULL) { setdepth(root->left); root->val=root->left->val+1; } else if(root->right!=NULL) { setdepth(root->right); root->val=root->right->val+1; } else { root->val=1; }}int max(int a,int b){ if(a>b) return a; return b;}就这道题目来说,其实这个方法还挺好的,但是就数值来说,这个可能就需要改一下类,否则就要把这个val的值覆盖了,或者需要一些辅助的测量工具。
上面代码的思路,运用两次递归,第一次算深度,第二次做比较。
阅读全文
0 0
- LeetCode 110. Balanced Binary Tree
- [LeetCode]110.Balanced Binary Tree
- 【LeetCode】110.Balanced Binary Tree
- [Leetcode] 110. Balanced Binary Tree
- LeetCode --- 110. Balanced Binary Tree
- [leetcode] 110.Balanced Binary Tree
- [leetcode]110. Balanced Binary Tree
- LeetCode:110. Balanced Binary Tree
- 110. Balanced Binary Tree LeetCode
- [LeetCode]110. Balanced Binary Tree
- Leetcode 110. Balanced Binary Tree
- LeetCode 110. Balanced Binary Tree
- LeetCode *** 110. Balanced Binary Tree
- leetcode 110. Balanced Binary Tree
- LeetCode 110. Balanced Binary Tree
- LeetCode 110. Balanced Binary Tree
- #leetcode#110. Balanced Binary Tree
- leetcode-110. Balanced Binary Tree
- Electron实战:创建ELectron开发的window应用安装包
- AngularJS过滤器filter-时间日期格式-渲染日期格式-$filter
- Win10 .net framework 3.5 安装失败 的解决方法
- RxJava 基础知识------------------(1)
- JS写简易计算器的原理
- leetcode 110. Balanced Binary Tree
- POI导入和导出Excel
- 菜鸟新手的知识汲取(1)网页左右导航栏左右内容显示
- 数据结构复习—栈
- JAVA企业面试题精选 Java SE 71-80
- JSX 中的 If-Else
- Laravel RawCookie
- 常用算法题目总结四(字符串篇)
- CC2530 RF部分使用 ——实现点对点收发