LeetCode 04检查平衡性-简单
生活随笔
收集整理的這篇文章主要介紹了
LeetCode 04检查平衡性-简单
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
實現一個函數,檢查二叉樹是否平衡。在這個問題中,平衡樹的定義如下:任意一個節點,其兩棵子樹的高度差不超過 1。
示例 1:
給定二叉樹 [3,9,20,null,null,15,7]
3/ \9 20/ \15 7返回 true 。
示例 2:
給定二叉樹 [1,2,2,3,3,null,null,4,4]
1/ \2 2/ \3 3/ \ 4 4返回 false 。
代碼如下:
/*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode(int x) : val(x), left(NULL), right(NULL) {}* };*/ class Solution { public:bool isBalanced(TreeNode* root) {return height(root) >=0;}int height(TreeNode *root){if (root==nullptr) return 0;int left_h = height(root->left);int right_h = height(root->right);if (left_h==-1 || right_h==-1 || abs(left_h-right_h) > 1) return -1;else return max(left_h,right_h)+1;} }; 創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的LeetCode 04检查平衡性-简单的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 吃减肥药对身体有哪些危害
- 下一篇: LeetCode28 对称的二叉树-简单