104. Maximum Depth of Binary Tree

Posted optor

tags:

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

原题链接:https://leetcode.com/problems/maximum-depth-of-binary-tree/description/
这道题目级别为“Easy”,也确实是简单!
不废话,直接使用递归实现深度优先搜索即可:

/**
 * Created by clearbug on 2018/2/26.
 */
public class Solution {

    static class TreeNode {
        int val;
        TreeNode left;
        TreeNode right;

        public TreeNode(int val) {
            this.val = val;
        }
    }

    public static void main(String[] args) {
        TreeNode root = new TreeNode(1);

        TreeNode rootLeft = new TreeNode(2);
        TreeNode rootRight = new TreeNode(3);
        root.left = rootLeft;
        root.right = rootRight;

        TreeNode leftLeft = new TreeNode(3);
        TreeNode leftRight = null;
        rootLeft.left = leftLeft;
        rootLeft.right = leftRight;

        TreeNode rightLeft = new TreeNode(2);
        TreeNode rightRight = null;
        rootRight.left = rightLeft;
        rootRight.right = rightRight;

        Solution s = new Solution();
        System.out.println(s.maxDepth(root));
    }

    public int maxDepth(TreeNode root) {
        if (root == null) {
            return 0;
        }
        return dfs(root, 1);
    }

    public int dfs(TreeNode node, int currentDepth) {

        int leftDepth = currentDepth, rightDepth = currentDepth;
        if (node.left != null) {
            leftDepth = dfs(node.left, currentDepth + 1);
        }
        if (node.right != null) {
            rightDepth = dfs(node.right, currentDepth + 1);
        }

        return leftDepth > rightDepth ?
                (leftDepth > currentDepth ? leftDepth : currentDepth) :
                (rightDepth > currentDepth ? rightDepth : currentDepth);
    }
}

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

104. Maximum Depth of Binary Tree

LC.104. Maximum Depth of Binary Tree

104. Maximum Depth of Binary Tree

LeetCode 104. Maximum Depth of Binary Tree

104. Maximum Depth of Binary Tree

LeetCode104. Maximum Depth of Binary Tree