美文网首页
2021-11-25 543. 二叉树的直径【Easy】

2021-11-25 543. 二叉树的直径【Easy】

作者: JackHCC | 来源:发表于2021-11-25 23:11 被阅读0次

定一棵二叉树,你需要计算它的直径长度。一棵二叉树的直径长度是任意两个结点路径长度中的最大值。这条路径可能穿过也可能不穿过根结点。

示例 :
给定二叉树

      1
     / \
    2   3
   / \     
  4   5    

返回 3, 它的长度是路径 [4,2,1,3] 或者 [5,2,1,3]。

注意:两结点之间的路径长度是以它们之间边的数目表示。

方法一:

# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, val=0, left=None, right=None):
#         self.val = val
#         self.left = left
#         self.right = right
class Solution:
    def __init__(self):
        self.mnum = 0

    def diameterOfBinaryTree(self, root):
        """
        :type root: TreeNode
        :rtype: int
        """
        def length(node):
            if not node: return 0
            llen = length(node.left)
            rlen = length(node.right)
            self.mnum = max(self.mnum, llen + rlen)
            return max(llen, rlen) + 1
        
        length(root)
        return self.mnum

相关文章

  • 2021-11-25 543. 二叉树的直径【Easy】

    定一棵二叉树,你需要计算它的直径长度。一棵二叉树的直径长度是任意两个结点路径长度中的最大值。这条路径可能穿过也可能...

  • LeetCode | 0543. Diameter of Bin

    LeetCode 0543. Diameter of Binary Tree二叉树的直径【Easy】【Python...

  • 543. 二叉树的直径

    原题 https://leetcode-cn.com/problems/diameter-of-binary-tr...

  • 543.二叉树的直径

    解题思路 一条路径的长度为该路径经过的节点数减一,所以求直径(即求路径长度的最大值)等效于求路径经过节点数的最大值...

  • 543. 二叉树的直径

    解法

  • 543. 二叉树的直径

    给定一棵二叉树,你需要计算它的直径长度。一棵二叉树的直径长度是任意两个结点路径长度中的最大值。这条路径可能穿过也可...

  • 543. 二叉树的直径

    一 题目: 二 思路: 分析下,二叉树的最长路径某个结点的左孩子最大深度加右孩子的最大深度 我们只需要找出每一个节...

  • LeetCode 543. 二叉树的直径

    给定一棵二叉树,你需要计算它的直径长度。一棵二叉树的直径长度是任意两个结点路径长度中的最大值。这条路径可能穿过根结...

  • leetcode 543. 二叉树的直径

    题目描述 给定一棵二叉树,你需要计算它的直径长度。一棵二叉树的直径长度是任意两个结点路径长度中的最大值。这条路径可...

  • [easy+][Tree]543.

    原题是: Given a binary tree, you need to compute the length ...

网友评论

      本文标题:2021-11-25 543. 二叉树的直径【Easy】

      本文链接:https://www.haomeiwen.com/subject/dznotrtx.html