代码随想录 | Day19 | 复习二叉树所写部分

代码随想录 | Day19 | 复习二叉树所写部分

Day 16

对称二叉树记忆不清晰,只有个大概的轮廓,但后序遍历(严格来说并不是)还是可以写出,层序遍历不记得方法

Day17

111. 二叉树的最小深度 - 力扣(LeetCode)

最小深度不够熟悉,方法也忘记了,也写错了,后续需要再次复习

Day18

222. 完全二叉树的节点个数 - 力扣(LeetCode)

利用二叉树性质的做法需要复习

110. 平衡二叉树 - 力扣(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

注意是每个结点,而不是只有根结点

相关推荐
say_fall2 分钟前
【Linux系统编程】Ext 文件系统:磁盘与存储、文件与目录、现代计算机究竟如何寻找文件
linux·运维·服务器·数据库·c++
雪落漂泊21 分钟前
C++算法 滑动窗口篇(下)
开发语言·c++
夜不会漫长35 分钟前
C++:红黑树
数据结构·算法
yyyang882 小时前
蓝牙系统整体架构详解
学习·信息与通信
Linux-lucky2 小时前
46-Linux学习之旅之LVS负载均衡与keepalived高可用
linux·运维·学习·ubuntu·负载均衡·lvs
你怎么知道我是队长3 小时前
C++零基础第3周:if/else、switch、for/while/do-while 控制流完全指南(附20段可运行代码+避坑清单)
java·开发语言·c++
冻柠檬飞冰走茶3 小时前
PTA刷题集之Airline Routes(C语言实现)
c语言·开发语言·数据结构·算法
736c4 小时前
固件开发岗算法
数据结构·算法
青少儿编程课堂4 小时前
蓝桥杯·全国青少年信息素养大赛·电子学会Python/C++考级:倍增法求最近公共祖先LCA解析
c++·python·算法·bfs·信息学竞赛
冻柠檬飞冰走茶4 小时前
PTA刷题集之Battle Over Cities - Hard Version(C语言实现)
c语言·开发语言·数据结构·算法