//计算二叉树的高度intheight(structTreeNode* root){
if(root ==NULL)returnNULL;int left =height(root->left);int right =height(root->right);return left > right ? left +1: right +1;}//判断是否是平衡二叉树
bool isBalanced(structTreeNode* root){
if(root ==NULL)return true;//分别求左右子树的高度int left =height(root->left);int right =height(root->right);//判断当前节点是否平衡if(abs(left - right)>1)return false;//递归检查左右子树是否平衡 returnisBalanced(root->left)&&isBalanced(root->right);}