二叉树中的最大路径和

题目链接:

124. 二叉树中的最大路径和 - 力扣(LeetCode)

解题思路:

  1. 首先题目的意思 路径和,是指能构成一条路径的 最大值,简单点来说,就是找打,一条以一个节点为 跟节点,左子树和右子树 都分别只取一侧构成一条 路径

  2. 我们需要遍历每个节点,产生负值的左子树或者右子树,就不需要考虑这个的价值了。遍历时 ,返回当前节点只取 左子树,或者右子树所产生的最大值 ,这样就可以在递归遍历的时候,看当前节点是不是 满足 以当前节点为 根 作为路径 是最大值即可

代码:

javascript 复制代码
/**
 * @param {TreeNode} root
 * @return {number}
 */
var maxPathSum = function (root) {
    let res = Number.MIN_SAFE_INTEGER;

    function getMax(root) {
        if (root === null) return 0;

        let leftMax = Math.max(getMax(root.left), 0)
        let rightMax = Math.max(getMax(root.right), 0)

        let curMax = root.val + leftMax + rightMax
        res = Math.max(res, curMax)

        return root.val + Math.max(leftMax, rightMax)
    }
    getMax(root)

    return res;
};
相关推荐
excel19 分钟前
Marked 与 Markdown 有什么区别?该怎么选?
前端
ZhengEnCi40 分钟前
Agent 架构怎么选:从单 Agent 到多 Agent 编排的选型决策指南
算法·架构
Da Da 泓1 小时前
五子棋 Web 端测试用例报告
前端·网络·websocket·网络协议·测试用例·项目
秋天的怀念_David1 小时前
第二十二夜 · 数字迷雾
java·程序人生·算法
Pniubi2 小时前
力扣283移动零(双指针法)
算法·leetcode·职场和发展
hhb_6182 小时前
大模型落地三重优化实战
人工智能·算法·机器学习
云和数据.ChenGuang2 小时前
光哥说Python RAG 系统需要哪些评估指标:从检索到生成的全链路评测指南
网络·人工智能·python·算法·langchain
zxcvb1532 小时前
远程查看本地文档:一条轻量 Web 文件服务的工程化链路
前端·远程查看文档
niucloud-admin2 小时前
NIUCLOUD PHP SAAS上门家政使用文档:城市管理
java·前端·php
北岛贰2 小时前
啵啵音乐迎来全新升级!
前端