二叉树最大深度

二叉树的最大深度

http://www.nowcoder.com/questionTerminal/8a2b2bf6c19b4f23a9bdb9b233eefa73

整体来说很简单的递归套路,首先我先假设 我可以获得当前 X 节点 左右 子树的最大深度
那么 当前 X 节点的最大深度 即为 左右子树 最大深度中 最大值+1
那么求整棵树的最大深度即 X=root
直接上递归函数即可

import java.util.*;

/*
 * public class TreeNode {
 *   int val = 0;
 *   TreeNode left = null;
 *   TreeNode right = null;
 * }
 */

public class Solution {
    /**
     * 
     * @param root TreeNode类 
     * @return int整型
     */
    public int maxDepth (TreeNode root) {
        // write code here
        if(root==null){
            return 0;
        }
        int leftMax=maxDepth(root.left);
        int rightMax=maxDepth(root.right);
        int max=Math.max(leftMax,rightMax)+1;
        return max;
    }


}
全部评论

相关推荐

08-01 14:15
门头沟学院 Java
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务