zoukankan      html  css  js  c++  java
  • 编程之美 两个叶子的节点之间 最大距离 变种 leecode

    提交地址:

    https://oj.leetcode.com/problems/binary-tree-maximum-path-sum/

    说一下思路http://www.cnblogs.com/miloyip/archive/2010/02/25/1673114.html这是编程之美那个题目的另一种解法思路更简单,那个题目求路径节点数,而这个是路径和,这是最简单的一种思路

    对于每一个节点:

    maxSum :一个属性,最后的值就是它,是他,是他,小哪吒;

    max(root)函数返回的是,包含root的到其子树的最大和

    max(root)= 最大( max(root.left)+root.val,max(root.right)+root.val,root.val)

    /**
     * Definition for binary tree
     * public class TreeNode {
     *     int val;
     *     TreeNode left;
     *     TreeNode right;
     *     TreeNode(int x) { val = x; }
     * }
     */
    public class Solution {
        private int maxSum=Integer.MIN_VALUE;
        public int maxPathSum(TreeNode root) {
            if(root==null) return 0;
            
               max(root);
               return maxSum;
            
            
            
    }
         public int max(TreeNode root) 
         {  if(root==null) return 0;
         
            int left=max(root.left);
            int right=max(root.right);
            
            int maxtemp=root.val;
            
            if(left>0) maxtemp+=left;
            if(right>0) maxtemp+=right;
            if(maxtemp>maxSum) maxSum=maxtemp;
            
            
            return Math.max(0,Math.max(left,right))+root.val;
            
         
         
               
              
             
             
         }
    }
    

      

  • 相关阅读:
    IOS开发之----NSDictionary,JSON和XML互相转换
    IOS中UITabelView常用属性
    IOS画板笔记
    cxf的wsdl2java命令和JDK的wsimport命令的区别和使用(转载)
    xml笔记(马士兵)
    javaDB(转载)
    dom4j全述(转)
    java性能类(摘录)
    ajax快记
    js的事件复制
  • 原文地址:https://www.cnblogs.com/hansongjiang/p/3816878.html
Copyright © 2011-2022 走看看