强生公司网站,如何管理好自己团队,wordpress设置访问密码忘记,热门搜索关键词题目来源#xff1a; leetcode题目#xff0c;网址#xff1a;LCR 176. 判断是否为平衡二叉树 - 力扣#xff08;LeetCode#xff09;
解题思路#xff1a; 若树中任意节点左子树是平衡二叉树#xff0c;右子树是平衡二叉树 且该节点左右子树平衡#xff0c;则该树…题目来源 leetcode题目网址LCR 176. 判断是否为平衡二叉树 - 力扣LeetCode
解题思路 若树中任意节点左子树是平衡二叉树右子树是平衡二叉树 且该节点左右子树平衡则该树是平衡二叉树。
解题代码
/*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(nullptr) {}* TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}* TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}* };*/
class Solution {
public:bool isBalanced(TreeNode* root) {return judge(root)-1?false:true;}int judge(TreeNode* root){if(rootnullptr){return 0;}int leftjudge(root-left);if(left-1){return -1;}int rightjudge(root-right);if(right-1){return -1;}if(abs(left-right)1){return -1;}return max(left,right)1;}
}; 总结 官方题解给出了自顶向下递归和自底向上递归两种解法。