验证是否为平衡二叉树
/**
* 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:
int Deth(TreeNode* root)
{
if(root==NULL)return 0;
else return max(Deth(root->left),Deth(root->right))+1;
}
int getValue(TreeNode* root)
{
if(root==NULL)return 0;
int A=getValue(root->left);
int B=getValue(root->right);
if(A>=2 || B>=2)return 2;
return abs(Deth(root->left)-Deth(root->right));
}
bool isBalanced(TreeNode* root) {
int res=false;
int ans=abs(getValue(root));
if(ans<2)res=true;
return res;
}
};