代码随想录 | Day19 | 复习二叉树所写部分
Day 16
对称二叉树记忆不清晰,只有个大概的轮廓,但后序遍历(严格来说并不是)还是可以写出,层序遍历不记得方法
Day17
最小深度不够熟悉,方法也忘记了,也写错了,后续需要再次复习
Day18
222. 完全二叉树的节点个数 - 力扣(LeetCode)
利用二叉树性质的做法需要复习
c++
class Solution {
public:
bool flag=true;
int backtracking(TreeNode *t)
{
if(t==nullptr)
return 0;
int l=1+backtracking(t->left);
int r=1+backtracking(t->right);
if(abs(l-r)>1)
flag=false;
return max(l,r);
}
bool isBalanced(TreeNode* root) {
int d=backtracking(root);
return flag;
}
};
复习时写出的是这样的代码,也可以通过
关键点就是求出每个结点的左右子树的高度,差不超过1
注意是每个结点,而不是只有根结点