mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-10 04:06:51 +08:00
添加 0968.监控二叉树.md Scala版本
This commit is contained in:
@ -544,5 +544,40 @@ int minCameraCover(struct TreeNode* root){
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Scala
|
||||||
|
|
||||||
|
```scala
|
||||||
|
object Solution {
|
||||||
|
def minCameraCover(root: TreeNode): Int = {
|
||||||
|
var result = 0
|
||||||
|
def traversal(cur: TreeNode): Int = {
|
||||||
|
// 空节点,该节点有覆盖
|
||||||
|
if (cur == null) return 2
|
||||||
|
var left = traversal(cur.left)
|
||||||
|
var right = traversal(cur.right)
|
||||||
|
// 情况1,左右节点都有覆盖
|
||||||
|
if (left == 2 && right == 2) {
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
// 情况2
|
||||||
|
if (left == 0 || right == 0) {
|
||||||
|
result += 1
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
// 情况3
|
||||||
|
if (left == 1 || right == 1) {
|
||||||
|
return 2
|
||||||
|
}
|
||||||
|
-1
|
||||||
|
}
|
||||||
|
|
||||||
|
if (traversal(root) == 0) {
|
||||||
|
result += 1
|
||||||
|
}
|
||||||
|
result
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
-----------------------
|
-----------------------
|
||||||
<div align="center"><img src=https://code-thinking.cdn.bcebos.com/pics/01二维码一.jpg width=500> </img></div>
|
<div align="center"><img src=https://code-thinking.cdn.bcebos.com/pics/01二维码一.jpg width=500> </img></div>
|
||||||
|
Reference in New Issue
Block a user