leetcode 968. 监控二叉树

贪心思想:尽量在父节点上放摄像头
用后序遍历,三种状态:
0: 无摄像头,并且没被覆盖
-1: 无摄像头,且被覆盖了
1: 有摄像头
class Solution {
    int num=0;
    public int minCameraCover(TreeNode root) {
        if(postOrder(root)==0) num++;
        return num;
    }
    int postOrder(TreeNode root){
        if(root==null) return -1;
        int left=postOrder(root.left),right=postOrder(root.right);
        if(left==-1&&right==-1) return 0;
        else if(left==0||right==0){
            num++;
            return 1;
        }else return -1;
    }
}

 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号