给定一个N叉树,找到其最大深度。
最大深度是指从根节点到最远叶子节点的最长路径上的节点总数。
例如,给定一个 3叉树
:
我们应返回其最大深度,3。
/*
// Definition for a Node.
class Node {
public int val;
public List<Node> children;
public Node() {}
public Node(int _val,List<Node> _children) {
val = _val;
children = _children;
}
};
*/
class Solution {
public int maxDepth(Node root) {
if(root!=null)
{
List<Node>children=root.children;
if(children.size()==0)
return 1;
int nums[]=new int[children.size()];
int i=0;
for(Node node:children)
{
nums[i]=maxDepth(node);
i++;
}
Arrays.sort(nums);
return nums[nums.length-1]+1;
}
return 0;
}
}
说明:
- 树的深度不会超过
1000
。 - 树的节点总不会超过
5000
。