判断一棵树是不是平衡树(数值大小不判断,只盼高度)

来源:互联网 发布:时时彩网站源码下载 编辑:程序博客网 时间:2024/06/05 18:14

题目描述

输入一棵二叉树,判断该二叉树是否是平衡二叉树。

class Solution {public:    bool IsBalanced_Solution(TreeNode* pRoot) {        int dep=0;        return dfs(pRoot,dep);    }    bool dfs(TreeNode* p,int &dep)    {        if(p==NULL)        {             dep=0;             return true;        }        int ledep=0,ridep=0;        if(!dfs(p->left,ledep)) return false;        if(!dfs(p->right,ridep)) return false;        int s=ledep-ridep;        if(s>1||s<-1) return false;        dep=max(ledep,ridep)+1;        return true;    }};


0 0