每日一题13-二叉树中的最大路径和

Posted 带问号的小朋友

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了每日一题13-二叉树中的最大路径和相关的知识,希望对你有一定的参考价值。

给你一个二叉树的根节点 root ,返回其最大路径和。


本题中,路径被定义为一条从树中任意节点出发,沿父节点-子节点连接,达到任意节点的序列。该路径 至少包含一个 节点,且不一定经过根节点。


链接:https://leetcode-cn.com/leetbook/read/top-interview-questions-hard/xdhfe5/


话不多说,深度优先遍历,递归精髓~

class Solution: def maxPathSum(self, root: TreeNode) -> int: res = float("-inf") def maxSum(root): nonlocal res if not root: return 0 l, r = maxSum(root.left), maxSum(root.right) res = max(res, max(l, 0) + max(r, 0) + root.val) return max(0, l, r) + root.val maxSum(root) return res


以上是关于每日一题13-二叉树中的最大路径和的主要内容,如果未能解决你的问题,请参考以下文章

5.16算法每日练习二叉树中最大路径和

每日一题919. 完全二叉树插入器

每日一题623. 在二叉树中增加一行

《LeetCode之每日一题》:216.二叉树的最大深度

7月28日每日一题:二叉树中所有距离为 K 的结点

[每日一题2020.06.21]leetcode #124 DFS二叉树