递归判断左右子树高度差
if (pRoot == NULL) return 0;
int leftDepth = getDepth(pRoot->left);
if (leftDepth == -1) return -1;
int rightDepth = getDepth(pRoot->right);
if (rightDepth == -1) return -1;
if (abs(leftDepth - rightDepth) > 1) return -1;
return max(leftDepth, rightDepth) + 1;
高度差大于1的进行排除
return getDepth(pRoot) != -1;