算法刷题日志——每日一题 二叉树

2673. 使二叉树所有路径值相等的最小代价

看完题之后觉得有点不能理解题意,在思考了之后还是想不明白,然后就打开了题解,参考了灵茶山艾府的题解,豁然开朗

java 复制代码
class Solution {
    public int minIncrements(int n, int[] cost) {
 int ans = 0;
        for (int i = n / 2; i > 0; i--) { // 从最后一个非叶节点开始算(因为叶子结点数量占一般,所以直接从n/2开始)
            ans += Math.abs(cost[i * 2 - 1] - cost[i * 2]); // 两个子节点变成一样的直接取两个叶子结点的差值,然后就是操作次数
            cost[i - 1] += Math.max(cost[i * 2 - 1], cost[i * 2]); // 累加路径和就是把当前子节点最大值加到当前节点中,成为路径和
        }
        return ans;
    }
}
相关推荐
ForDreamMusk29 分钟前
批量归一化
人工智能·算法·机器学习
Ivanqhz1 小时前
刚体的自由度
人工智能·算法
KaMeidebaby2 小时前
卡梅德生物技术快报|抗体合成:多肽抗体合成工程化方案:Nsp2 保守肽多抗制备与多维度验证
前端·网络·数据库·人工智能·算法
Yang_jie_032 小时前
笔记:数据结构(栈是否使用底指针以及头指针的初始化值)
数据结构·笔记·算法
2301_800895103 小时前
信息安全数学基础复习
算法
爱折腾的小黑牛3 小时前
简记往来批量录入功能的实现:从文本到结构化数据
前端·算法
Starmoon_dhw3 小时前
题解:P17078 夏日甜点
c++·学习·算法·图论
海石4 小时前
【JS击败90%】前缀和+定长滑动窗口
算法·leetcode
Tisfy4 小时前
LeetCode 2685.统计完全连通分量的数量:DFS求每个连通块的边点数
算法·leetcode·深度优先··题解·连通图·全连通分量
海石4 小时前
1次遍历,空间复杂度击败100%,时间复杂度击败85%
算法·leetcode