【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;
    }
};
相关推荐
这料鬼有毒11 小时前
二刷hot100-17.电话号码的字母组合
数据结构
执明wa12 小时前
从 T 到协变逆变
java·开发语言·数据结构
阿Y加油吧12 小时前
两道数组算法题复盘:多数元素 & 颜色分类
算法·leetcode·职场和发展
夏日听雨眠12 小时前
排序(选择排序 ,冒泡排序,归并排序)
数据结构·算法·排序算法
tyung12 小时前
Go 手写二叉堆优先队列:避开 container/heap 的性能陷阱
数据结构·后端·go
珠海西格电力12 小时前
零碳园区的能源成本优势具体体现在哪些方面
大数据·人工智能·算法·架构·能源
Donk_6712 小时前
Shell 数组实践
linux·算法·bash
papership12 小时前
【入门级-数据结构-1、线性结构:栈和队列】
数据结构
fu的博客13 小时前
【数据结构14】并查集:QuickUnion、QuickFind、路径压缩
数据结构
比特森林探险记13 小时前
底层数据结构分析 go 语言中的 slice map channel interface
数据结构·golang·哈希算法