题解 | #牛群排列的最大深度#

牛群排列的最大深度

https://www.nowcoder.com/practice/b3c6383859a142e9a10ab740d8baed88

import java.util.*;

/*
 * public class TreeNode {
 *   int val = 0;
 *   TreeNode left = null;
 *   TreeNode right = null;
 *   public TreeNode(int val) {
 *     this.val = val;
 *   }
 * }
 */

public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     *
     * @param root TreeNode类
     * @return int整型
     */
    public static int max_depth = 0;
    public int maxDepth (TreeNode root) {
        // write code here
        search(root, 0);
        return max_depth;
    }

    public void search(TreeNode root, int cur) {
        if (root == null) {
            max_depth = Math.max(cur, max_depth);
            return;
        }
        search(root.left, cur + 1);
        search(root.right, cur + 1);
    }
}

本题考察的知识点为二叉树的遍历,所用编程语言为java.二叉树的遍历方法有四种

1.前序遍历,先遍历根节点,再遍历左节点,最后遍历右节点

2.中序遍历,先遍历左节点,再遍历根节点,最后遍历右节点

3.后序遍历,先遍历左节点,在便利右节点,最后遍历根节点

4.层序遍历,每层结点从左到右依次访问,常用队列实现遍历操作

关于这题,我们可以考虑使用前序遍历、中序遍历、后序遍历的任何一种进行实现,比较每条从根节点到叶子结点的路径长度,得到最长路径,关于这题我是使用的前序遍历。

全部评论

相关推荐

12-13 14:51
已编辑
井冈山大学 算法工程师
龙虾x:算法比你强的没有你美,比你美的…..算了已经没有比你美的了
工作两年想退休了
点赞 评论 收藏
分享
孙艹肘:校招不给三方直接让实习我都去了,,主打一个在学校呆着也是闲着,不如出来实习一下
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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