543. Diameter of Binary Tree

Posted tobeabetterpig

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了543. Diameter of Binary Tree相关的知识,希望对你有一定的参考价值。

/**
 * Definition for a binary tree node.
 * public class TreeNode {
 *     int val;
 *     TreeNode left;
 *     TreeNode right;
 *     TreeNode(int x) { val = x; }
 * }
 */
class Solution {
    int max_diameter = 0; // must be here to be accesible from the two functions below 
    
    public int diameterOfBinaryTree(TreeNode root) {
   
      maxDepth(root);
      return max_diameter;
        
    }
    private int maxDepth(TreeNode root){
      if (root == null){
        return 0;
      }
      
      
      int left = maxDepth(root.left);
      int right = maxDepth(root.right);
      
      int current_diameter = left + right;
      
      max_diameter = Math.max(current_diameter, max_diameter);
      
      return Math.max(right, left) + 1;
    }
}


// when solving this problem, maxdepth is really just retuning the max depth from the very bottom to the root, and while doing this, we have a current diameter to calculate the current left max depth  + right max depth , and compare it with previous max_diameter , 

 

以上是关于543. Diameter of Binary Tree的主要内容,如果未能解决你的问题,请参考以下文章

Leetcode-543-Diameter of Binary Tree

543. Diameter of Binary Tree

543. Diameter of Binary Tree

543. Diameter of Binary Tree

LeetCode 543. Diameter of Binary Tree 解题笔记

LeetCode 543. Diameter of Binary Tree 解题笔记