首页 > 其他分享 >【树】二叉树的应用 I

【树】二叉树的应用 I

时间:2024-01-25 19:58:33浏览次数:21  
标签:int 路径 二叉树 应用 2.1 root 节点

目录

1. 题目

二叉树相关的题目:

序号 题目 难度
1 124. 二叉树中的最大路径和 困难
2

2. 应用

2.1. Leetcode 124. 二叉树中的最大路径和

2.1.1. 题目

124. 二叉树中的最大路径和

2.1.2. 解题思路

根据题意,最大路径和一定是当前节点与左右子树的对路径的贡献之和。

由于求最大路径和的时候,需要离开当前节点的时候才能得到当前节点对当前路径的贡献。因此,这里,我们需要使用后序遍历的方式求解。

我们定义一个递归函数:int dfs(TreeNode root),用于返回当前节点对最大路径的贡献,在遍历每一个节点后,同时,更新最大路径和即可。

注意,由于节点有负值,因此,当某一个节点的贡献为负值时,需要将其去掉,即它对路径和的贡献为 \(0\)。

2.1.3. 代码实现

class Solution {
    private int result = Integer.MIN_VALUE;
    public int maxPathSum(TreeNode root) {
        result = Integer.MIN_VALUE;
        dfs(root);
        return result;
    }

    private int dfs(TreeNode root) {
        if (root == null) {
            return 0;
        }

        int left = Math.max(dfs(root.left), 0);
        int right = Math.max(dfs(root.right), 0);
        result = Math.max(result, root.val + left + right);
        return root.val + Math.max(left, right);
    }
}

标签:int,路径,二叉树,应用,2.1,root,节点
From: https://www.cnblogs.com/larry1024/p/17988000

相关文章

  • windows程序设计---使用c语言开发windows桌面应用程序
     消息机制--队列消息(常规消息鼠标,键盘等等,经过消息循环)GetMessage()得到消息--从消息队列中检索,DispatchMessage()分发消息消息机制----非对列消息-----调用特定windows程序函数触发的消息如:CreateWindow()函数被调用则发送WM_PAINT消息   windows窗口,非客户区是无......
  • 研运干货|平台工程、应用可观测性趋势下,质量管理的应对之策
    “为变化做好准备。”这是当下对所有人的一句很重要的话,尤其是对于处在高速迭代与日新月异的技术工程领域的我们。最近,Gartner在2023十大技术趋势的报告中提到了平台工程(Platform Engineering)和应用可观测性(Applied Observability)。 本文将通过对这两大战略性技术趋势点的进行剖......
  • 视频监控方案设计:EasyCVR视频智能监管系统方案技术特点与应用
    随着科技的发展,视频监控平台在各个领域的应用越来越广泛。然而,当前的视频监控平台仍存在一些问题,如视频质量不高、监控范围有限、智能化程度不够等。这些问题不仅影响了监控效果,也制约了视频监控平台的发展。为了解决这些问题,TSINGSEE青犀推出的视频汇聚管理EasyCVR视频监控平台......
  • 行业应用 | Sophon AutoCV推动AI应用从模型生产到高效落地
    随着技术市场和应用方向的逐渐成熟,人工智能与各行各业的结合和落地逐渐进入了深水区。虽然由于行业规模化和应用普及度的限制,人工智能在“传统”行业的落地不如消费互联网行业,但是借助人工智能为“传统”行业的发展注入新能量一直是相关从业者探索的方向和创造数据价值的重要途径。......
  • 高效、易用、精准 | 三维天地智能试剂管理平台在实验室中的应用
    在当前实验室管理阶段,关于试剂耗材管理方面,存在以下几个关键性问题:一是试剂耗材管理缺乏规范性,二是试剂耗材台账信息模糊不清,三是库存管理存在精确度不足,四是位置定位及查找困难。针对所述问题,致力于实验室数智化建设的北京三维天地科技股份有限公司为实验室提供了一款高效......
  • TSINGSEE青犀智慧水电站视频智能监控系统方案设计与技术应用介绍
    一、背景需求水电站作为国家重要的能源基地,其安全运行对于保障能源供应和社会稳定具有重要意义。然而,传统的人工监控方式存在着诸多问题,如人力成本高、监控范围有限、反应不及时等。因此,水电站急需引进一种先进的视频智能监控系统,以提高监控效率和安全性。二、方案设计TSINGSEE......
  • 深入解析C++中sizeof和strlen的奥秘:区别、应用与技巧全揭秘!
     sizeof 和 strlen 是C++中用于处理字符串的两个不同的操作符,它们的作用和使用场景有很大的区别。sizeof操作符:区别:sizeof 是一个运算符,不是一个函数,用于获取一个类型或变量的字节大小。对于数组,sizeof 返回整个数组的字节大小。对于指针,sizeof 返回指针本身的......
  • HTTP连接池在Java中的应用:轻松应对网络拥堵
    网络拥堵是现代生活中无法避免的问题,尤其是在我们这个“点点点”时代,网页加载速度直接影响到我们的心情。此时,我们需要一位“救世主”——HTTP连接池。今天,就让我们一起探讨一下,这位“救世主”如何在Java中大显神通。首先,我们要明白,什么是HTTP连接池?简单来说,它就像一个“连接银行”......
  • cnf结构探索与应用的文献-归入cmt标签
      @inproceedings{DBLP:conf/gcai/JamaliM17,author={SimaJamaliandDavidMitchell},editor={ChristophBenzm{\"{u}}llerandChristineL.LisettiandMartinTheobald},t......
  • 应急照明和疏散指示系统在发电厂中是如何应用的
    1.引言发电厂照明设计主要依据《发电厂和变电站照明设计技术规定》DL/T5390-2014(以下简称“照明标准”)和《火力发电厂与变电站设计防火标准》GB50229-2019(以下简称“防火标准”),应急照明分为备用照明和疏散照明,供电电压均采用380V/220V,与火灾自动报警系统没有关联。新标准于2019......