一亩三分地论坛

 找回密码
 获取更多干货,去instant注册!

扫码关注一亩三分地公众号
查看: 374|回复: 2
收起左侧

[树/链表/图] 【LintCode】Binary Tree Maximum Path Sum 修改以后逻辑依然不对

[复制链接] |试试Instant~ |关注本帖
小马3107 发表于 2015-8-5 09:58:30 | 显示全部楼层 |阅读模式

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?获取更多干货,去instant注册!

x
LintCode上写的题。经过大家指正以后重新修改了逻辑,可是仍然不对。{-10,-20,#,#,-31,-24,-5,#,#,-6,-7,-8,-9}输出-7 (我自己运行以后明明是-5)
求指正
QQ截图20150804215729.gif
stellari 发表于 2015-8-5 10:37:51 | 显示全部楼层
你在maxThroughPath中少考虑了一种情况。在左右子树中的最大值均为负的情况下,你应该返回root.val本身,而不是root.val加上左或右子树中的最大值。

另外,像我之前说的,在maxPathSum中递归调用自身获得insideLeft/Right是不必要的,你可以把这两个insiderXXX变量设成一个全局变量(没错,一个就够了),在maxThroughPath的调用过程中顺便把“当前子树下的最大路径”算出来,在返回前更新insiderXXX。
回复 支持 反对

使用道具 举报

 楼主| 小马3107 发表于 2015-8-5 10:43:21 | 显示全部楼层
stellari 发表于 2015-8-5 10:37
你在maxThroughPath中少考虑了一种情况。在左右子树中的最大值均为负的情况下,你应该返回root.val本身,而 ...

谢谢!一针见血!
回复 支持 反对

使用道具 举报

本版积分规则

请点这里访问我们的新网站:一亩三分地Instant.

Instant搜索更强大,不扣积分,内容组织的更好更整洁!目前仍在beta版本,努力完善中!反馈请点这里

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明 ( 沪ICP备11015994号 )

custom counter

GMT+8, 2016-12-6 01:11

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表