Leetcode 968-监控二叉树

给定一个二叉树,我们在树的节点上安装摄像头。

节点上的每个摄影头都可以监视其父对象、自身及其直接子对象。

计算监控树的所有节点所需的最小摄像头数量。

题解

参考自代码随想录

bash 复制代码
class Solution {
    public int result=0;
    public int minCameraCover(TreeNode root) {
        if (dfs(root) == 0) { // root 无覆盖
            result++;
        }
        return result;
        
    }

    public int dfs(TreeNode root){
        //边界条件
        // 空节点,该节点有覆盖
        if (root == null) return 2;

        int left=dfs(root.left);
        int right=dfs(root.right);

        //左右子节点有一个没有覆盖,本节点需要装监控
        if(left==0||right==0){
            result++;
            return 1;
        }
        //左右子节点有一个有监控,本节点被覆盖
        if(left==1||right==1) return 2;
        else return 0;


    }
}
相关推荐
甄心爱学习12 小时前
KMP算法(小白理解)
开发语言·python·算法
wen__xvn13 小时前
牛客周赛 Round 127
算法
大锦终13 小时前
dfs解决FloodFill 算法
c++·算法·深度优先
橘颂TA13 小时前
【剑斩OFFER】算法的暴力美学——LeetCode 200 题:岛屿数量
算法·leetcode·职场和发展
苦藤新鸡13 小时前
14.合并区间(1,3)(2,5)=(1,5)
c++·算法·leetcode·动态规划
猫头虎13 小时前
2026年1月18日11时博客之星投票数据TOP100总排名预测:全网投票总数突破一万大关
程序人生·职场和发展·创业创新·业界资讯·程序员创富·csdn·博客之星
程序员-King.13 小时前
day145—递归—二叉树的右视图(LeetCode-199)
算法·leetcode·二叉树·递归
漫随流水13 小时前
leetcode算法(112.路径总和)
数据结构·算法·leetcode·二叉树
过期的秋刀鱼!13 小时前
机器学习-带正则化的成本函数-
人工智能·python·深度学习·算法·机器学习·逻辑回归
ScilogyHunter13 小时前
前馈/反馈控制是什么
算法·控制