二叉树的最长路径和(Binary Tree Maximum Path Sum)
来源:互联网 发布:win8能装ubuntu 编辑:程序博客网 时间:2024/06/04 18:36
题目:
Given a binary tree, find the maximum path sum. For this problem, a path is defined as any sequence of nodes from some starting node to any node in the tree along the parent-child connections. The path must contain at least one node and does not need to go through the root
google 翻译:
给定一个二叉树,找到最大路径和。 对于这个问题,路径被定义为从父子连接到某个起始节点到树中任何节点的任何节点序列。 该路径必须包含至少一个节点,不需要遍历根。
示例:
就是从任意节点开始到任意节点结束所走过的最大距离
思路:
最大值的可能情况,虽然题目说不需要遍历根节点,其实是需要根节点的。
把根节点理解成父节点更好一些,因为需要父节点和别的连成一条线。
最大值来自
- root+左边的某条路径+右边的某条路径
- 左边的某条路径 + root
- root + 右边的某条路径
- root
练习传送门:这里
java实现:
/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */class Solution { int max = Integer.MIN_VALUE; public int maxPathSum(TreeNode root) { record(root); return max; } public int record(TreeNode root){ if(root==null) return 0; int l=Math.max(0,record(root.left)); int r=Math.max(0,record(root.right)); max=Math.max(max,root.val+l+r); return root.val+Math.max(l,r); }}
阅读全文
0 0
- 二叉树的最长路径和(Binary Tree Maximum Path Sum)
- Binary Tree Maximum Path Sum 二叉树最大路径和
- Binary Tree Maximum Path Sum (二叉树路径和的最大值) 【leetcode】
- LeetCode(Binary Tree Maximum Path Sum) 在二叉树中找出一条和最大的路径
- Binary Tree Maximum Path Sum 二叉树中任意路径的最大和
- Binary Tree Maximum Path Sum 二叉树的最大路径和
- Binary Tree Maximum Path Sum 求二叉树的最大路径和
- 124 Binary Tree Maximum Path Sum 求二叉树的最大路径和
- 树的最大路径和 Binary Tree Maximum Path Sum
- LeetCode 124. Binary Tree Maximum Path Sum(二叉树最大路径和)
- 94.Binary Tree Maximum Path Sum-二叉树中的最大路径和(中等题)
- LeetCode | Binary Tree Maximum Path Sum(二叉树的路径最大值)
- leetcode解题之124. Binary Tree Maximum Path Sum Java版 (二叉树的最大路径和)
- 124. Binary Tree Maximum Path Sum 二叉树上的最大路径和
- Binary Tree Maximum Path Sum 二叉树最大路径和 @LeetCode
- Leetcode 124 Binary Tree Maximum Path Sum 二叉树最大路径和
- [LintCode] Binary Tree Maximum Path Sum (二叉树中的最大路径和)
- lintcode binary-tree-maximum-path-sum 二叉树中的最大路径和
- 实用的Eclipse快捷键
- 【JAVA开发之架构专题】10.NIO通信架构
- ckeditor的简单使用以及多张图片上传插件的制作
- Just do it
- Easy Problemset Gym100851E
- 二叉树的最长路径和(Binary Tree Maximum Path Sum)
- 最小局域网实现tftp
- 错误信息:Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1
- excel数据导入导出的模块
- Linux-第五单元总结
- Android Fingerprint完全解析(三) :Fingerprint Hal层分析
- Android数据存储之SQLite
- c3p0参数解释
- python3.6中xadmin安装问题