当前位置: 首页 > wzjs >正文

网站建设动态页面修改删除玻璃制品东莞网站建设

网站建设动态页面修改删除,玻璃制品东莞网站建设,推广收款码平台有哪些,技能培训网题目 思路 这道题我们可以考虑用递归来解决。 首先设计一个maxPath函数用来递归计算二叉树中一个节点的最大贡献值,具体来说,就是以该节点为根节点的子树中寻找以该节点为起点的一条路径,使得该路径上的节点值之和最大。 如果该节点为空&a…

题目

思路

这道题我们可以考虑用递归来解决。

首先设计一个maxPath函数用来递归计算二叉树中一个节点的最大贡献值,具体来说,就是以该节点为根节点的子树中寻找以该节点为起点的一条路径,使得该路径上的节点值之和最大。

如果该节点为空,则最大贡献值为0。

如果非空,最大贡献值就等于节点值与其子节点中的最大贡献值之和

过程分析

假设二叉树如下

递归步骤:

1. 节点 20

  1. 左子树:空,leftGain = 0。
  2. 右子树:空,rightGain = 0。
  3. sum = 20 + 0 + 0 = 20。
  4. 更新 maxsum = max(INT_MIN, 20) = 20。
  5. 返回 20 + max(0, 0) = 20。

2. 节点 1

  1. 左子树:空,leftGain = 0。
  2. 右子树:节点 3。

节点 3:

  1. 左子树:空,leftGain = 0。
  2. 右子树:空,rightGain = 0。
  3. sum = 3 + 0 + 0 = 3。
  4. 更新 maxsum = max(20, 3) = 20。
  5. 返回 3 + max(0, 0) = 3。
  1. rightGain = 3。
  2. sum = 1 + 0 + 3 = 4。
  3. 更新 maxsum = max(20, 4) = 20。
  4. 返回 1 + max(0, 3) = 4。

3.  节点 2

  1. 左子树:节点 20,leftGain = 20。
  2. 右子树:节点 1,rightGain = 4。
  3. sum = 2 + 20 + 4 = 26。
  4. 更新 maxsum = max(20, 26) = 26。
  5. 返回 2 + max(20, 4) = 22。

4.  节点 10(根节点)

  1. 左子树:节点 2,leftGain = 22。
  2. 右子树:节点 10。

节点 10:

左子树:空,leftGain = 0。

右子树:节点 -25。

节点 -25:

左子树:空,leftGain = 0。

右子树:空,rightGain = 0。

sum = -25 + 0 + 0 = -25。

更新 maxsum = max(26, -25) = 26。

返回 -25 + max(0, 0) = -25。

rightGain = 0(因为 -25 是负数,被置为 0)。

sum = 10 + 0 + 0 = 10。

更新 maxsum = max(26, 10) = 26。

返回 10 + max(0, 0) = 10。

rightGain = 10。

sum = 10 + 22 + 10 = 42。

更新 maxsum = max(26, 42) = 42。

返回 10 + max(22, 10) = 32。

最大路径和为 42,路径为 20 -> 2 -> 10 -> 10

代码

class Solution {
private:int maxsum = INT_MIN;
public:int maxPathSum(TreeNode* root) {maxPath(root);return maxsum;}int maxPath(TreeNode* node){    if(node == nullptr)return 0;int leftGain = max(maxPath(node->left),0);int rightGain = max(maxPath(node->right),0);int sum = node->val + leftGain + rightGain;maxsum = max(maxsum,sum);return node->val + max(leftGain, rightGain);}
};

http://www.dtcms.com/wzjs/534642.html

相关文章:

  • 怎么用自己的网站做网页西安网站维护
  • 杭州知名网站制作公司寻找网络公司做公司网站升级改版
  • lamp 做网站惠州市博罗县建设局网站
  • 深圳做网站要服务器地址怎么查询
  • 政协机关网站建设wordpress concise
  • 郴州网站建设ku0735青海兴远建设工程有限公司网站
  • 旅游网站营销装饰工程规范
  • 建筑网站大图wordpress 几百万数据
  • 网站的seo方案用flash做的网站展示
  • 网站怎样运营wordpress企业教程
  • 重庆的主要的网站遵义网约车租车公司
  • 深圳网站定制多少钱开发电子商务网站和开发新闻类网站什么异同
  • 阿里云个人网站建设方案书wordpress图片缓冲
  • 纯静态网站制作免费虚拟主机空间申请
  • 网站建设 总体思路动漫设计与制作工资多少
  • 深圳官网建站服务商wordpress主题字体用隶书
  • 皮具网站设计湛江网页设计培训
  • 怎么做系统软件网站商城网站建设行情
  • dw进行网站建设包含哪些步骤微信小程序商城怎么开发
  • 网站导航界面重庆百度搜索优化
  • 江苏建设科技网站wordpress 提取文章段落
  • 建站工作室源码做ppt卖给网站
  • 南宁伯才网络建站如何注册小程序要多少钱
  • 网站修改图片怎么做单页网站如何做cpa
  • 翻译类公司网站模板做网站运营有前途吗
  • 网站设计公司排行榜wordpress导航设置
  • 网站游戏网站开发阿里巴巴网站建设初衷
  • 网站如何动态修改主页深圳推广系统哪家好
  • 把网站提交谷歌wordpress 无法登陆
  • 丹麦网站后缀邯郸建设网站