美文网首页
LeetCode 第543题:找到所有数组中消失的数字

LeetCode 第543题:找到所有数组中消失的数字

作者: 放开那个BUG | 来源:发表于2021-06-12 16:50 被阅读0次

    1、前言

    题目描述

    2、思路

    一看到这道题,我就想到使用求二叉树的最大深度的思路。求最大深度是,我们先求出左子树的最大深度,再求出右子树的最大深度,然后再返回最大的。最后的返回值确实只有一个,但是我们可以定义一个全局遍历,在返回之前,先让 left + right 与全局变量比较,取最大的。

    最后结果返回的时候,为全局变量。

    3、代码

    public class Q543_DiameterOfBinaryTree {
    
        private int max = 0;
    
        public int diameterOfBinaryTree(TreeNode root) {
            if(root == null){
                return 0;
            }
            dfs(root);
    
            return max;
        }
    
        private int dfs(TreeNode root){
            if(root == null){
                return 0;
            }
            int left = dfs(root.left);
            int right = dfs(root.right);
            max = Math.max(max, left + right);
    
            return Math.max(left, right) + 1;
        }
    }
    
    

    相关文章

      网友评论

          本文标题:LeetCode 第543题:找到所有数组中消失的数字

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