递归法:
1.确定传入参数以及返回值
传入节点 返回以当前节点为根节点的树的高度
int getHeight(TreeNode* node)
2.确定终止条件
if(node==NULL)return 0;
3.确定单层递归的逻辑
int leftHeight=getHeight(node->left);
if(leftHeight==-1)return -1;
int rightHeight=getHeight(node->right);
if(rightHeight==-1)return -1;
int result;
if(abs(leftHeight-rightHeight)>1)return -1;
else result=1+max(leftHeight,rightHeight);
return result;
传参判断
bool isBalanced(TreeNode* root) {
return getHeight(root)==-1?false:true;
}