【LeetCode热题100】【二叉树】二叉树中的最大路径和

题目链接:124. 二叉树中的最大路径和 - 力扣(LeetCode)

天美后台开发一面第三题,之前做过543. 二叉树的直径 - 力扣(LeetCode),解法基本一样,只不过累积的值变成了权重,还是用递归,不过我面试的时候没有考虑到负数的情况,有点遗憾,希望给个机会

复制代码
class Solution {
public:
    int ans = INT32_MIN;

    int depth(TreeNode *root) {
        if (root == nullptr)
            return 0;
        int R = max(depth(root->right), 0);
        int L = max(depth(root->left), 0);
        ans = max(ans, R + L + root->val);
        return max(R, L) + root->val;
    }

    int maxPathSum(TreeNode *root) {
        depth(root);
        return ans;
    }
};
相关推荐
WL_Aurora1 分钟前
Python 算法基础篇之堆和优先队列
python·算法
努力努力再努力wz3 分钟前
【MySQL进阶系列】一文打通事务机制:从锁、Undo Log 到 MVCC 与隔离级别
c语言·数据结构·数据库·c++·mysql·算法·github
薇茗6 分钟前
【初阶数据结构】 左右逢源的分支诗律 二叉树1
c语言·数据结构·算法
澈2079 分钟前
C++ string全面解析:从入门到精通
数据结构·c++·算法
码农的神经元29 分钟前
拆解 SDGT 算法:图神经网络 + Transformer 如何做短期电力负荷预测
神经网络·算法·transformer
Irissgwe37 分钟前
算法之滑动窗口
数据结构·算法
纽扣6671 小时前
【算法进阶之路】链表核心:快慢指针与反转链表专题精讲
数据结构·c++·算法·链表
浅念-1 小时前
吃透栈:LeetCode 栈算法题全解析
数据结构·c++·算法·leetcode·职场和发展·
吟安安安安1 小时前
【算法设计与分析】第一讲 算法基础(上)
算法
阿Y加油吧1 小时前
二刷 LeetCode:62. 不同路径 & 64. 最小路径和 复盘笔记
笔记·算法·leetcode