【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;
    }
};
相关推荐
Yzzz-F5 分钟前
牛客小白月赛127 E
算法
大锦终9 分钟前
递归回溯综合练习
c++·算法·深度优先
Keep__Fighting18 分钟前
【神经网络的训练策略选取】
人工智能·深度学习·神经网络·算法
晚风吹长发29 分钟前
初步了解Linux中的动静态库及其制作和使用
linux·运维·服务器·数据结构·c++·后端·算法
sin_hielo29 分钟前
leetcode 3453(二分法)
算法
坚持不懈的大白1 小时前
Leetcode学习笔记
笔记·学习·leetcode
风之歌曲1 小时前
c++高精度模板
c++·算法·矩阵
SWAGGY..1 小时前
数据结构学习篇(10)--- 二叉树基础oj练习
数据结构·学习
千谦阙听1 小时前
双链表:比单链表更高效的增删查改
数据结构·链表·visual studio
嵌入式进阶行者2 小时前
【算法】深度优先搜索实例:华为OD机考双机位A卷- 中庸行者
c++·算法·华为od·深度优先