Python | Leetcode Python题解之第337题打家劫舍III

题目:

题解:

python 复制代码
# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.right = None

class Solution:
    def rob(self, root: TreeNode) -> int:
        def _rob(root):
            if not root: return 0, 0  # 偷,不偷

            left = _rob(root.left)
            right = _rob(root.right)
            # 偷当前节点, 则左右子树都不能偷
            v1 = root.val + left[1] + right[1]
            # 不偷当前节点, 则取左右子树中最大的值
            v2 = max(left) + max(right)
            return v1, v2

        return max(_rob(root))
相关推荐
嘻嘻哈哈OK啦4 分钟前
day46打卡
python
木头左9 分钟前
Docker容器化技术概述与实践
python
坚持就完事了29 分钟前
大二下期末
python·numpy·pandas
蹦蹦跳跳真可爱58931 分钟前
Python----目标检测(使用YOLO 模型进行线程安全推理和流媒体源)
人工智能·python·yolo·目标检测·目标跟踪
爱补鱼的猫猫1 小时前
Pytorch知识点2
人工智能·pytorch·python
deephub1 小时前
提升模型泛化能力:PyTorch的L1、L2、ElasticNet正则化技术深度解析与代码实现
人工智能·pytorch·python·深度学习·机器学习·正则化
weixin_422456441 小时前
第N1周:one-hot编码案例
python
Python私教1 小时前
字节跳动开源图标库:2000+图标一键换肤的魔法
python·开源
何双新1 小时前
第2讲、Odoo深度介绍:开源ERP的领先者
python·开源
2301_805054562 小时前
Python训练营打卡Day46(2025.6.6)
开发语言·python