跟上一题有点类似,如果用两层递归,时间复杂度太大。看了题解才发现可以边递归计算左右子树深度边判断是否平衡。可能平时不怎么用c++,竟然忘了引用这个功能。惭愧惭愧。。。 class Solution { public: bool judge(TreeNode* r, int& depth) { if (!r) return true; int left = 0, right = 0;//左右子树的深度 if (!judge(r->left, left) || !judge(r->rig...