刷题-LeetCode-968. 监控二叉树(贪心)
发布时间
阅读量:
阅读量
968. 监控二叉树
题目链接
出处:力扣(LeetCode)
题目描述
给定一个二叉树,我们在树的节点上安装摄像头。
节点上的每个摄影头都可以监视其父对象、自身及其直接子对象。
计算监控树的所有节点所需的最小摄像头数量。
示例 1:
输入:[0,0,null,0,0]
输出:1
解释:如图所示,一台摄像头足以监控所有节点。
示例 2:
数组中的元素包括多个零值和null值(其中数值字段设为零表示无摄像头安装),而数值字段设为null则表示该位置未被探测到监控范围
题目分析
- 方法一
为了在C++中有效管理内存资源,必须手动进行内存分配与释放。请确保及时从内存中释放不再需要的资源,并养成这一良好习惯。
通过创建虚拟节点通常被视为一种高效的方法来解决某些问题。
掌握如何自定义节点对于构建复杂系统至关重要。
/** * Definition for singly-linked list.
* struct ListNode {
* int val;
* ListNode *next;
* ListNode() : val(0), next(nullptr) {}
* ListNode(int x) : val(x),
全部评论 (0)
还没有任何评论哟~
