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))
相关推荐
充钱大佬20 小时前
Python测试基础教程
python·log4j·apache
初心丨哈士奇1 天前
Python 四大基础容器|列表篇
python
明理的信封1 天前
AI 基础设施的“去 Python 化“:Rust 与 C# 的两条替代路径
人工智能·python·rust
麻雀飞吧1 天前
2026年AI量化开发,先跑通小流程再加复杂功能
人工智能·python
daphne odera�1 天前
PyCharm 中 Codex 插件启动失败:unknown variant default 的解决方法
python·chatgpt·pycharm
nbu04william1 天前
Deepseek-api省token的用法
python·大模型·token·deepseek
测试老哥1 天前
Pytest自动化测试详解
自动化测试·软件测试·python·测试工具·测试用例·pytest·接口测试
坚持学习前端日记1 天前
国产化适配全流程适配英伟达本地开发
人工智能·python
源图客1 天前
云途物流API开发-鉴权认证(Java)
java·网络·python
三川6981 天前
Tkinter库的学习记录06-变量类别
python