|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- Given a n-ary tree, find its maximum depth.
- The maximum depth is the number of nodes along the longest path from the root node down to the farthest leaf node.
- Nary-Tree input serialization is represented in their level order traversal, each group of children is separated by the null value (See examples).
-
- Example 1:
-
- Input: root = [1,null,3,2,4,null,5,6]
- Output: 3
- Example 2:
-
- Input: root = [1,null,2,3,4,5,null,null,6,7,null,8,null,9,10,null,null,11,null,12,null,13,null,null,14]
- Output: 5
-
- Constraints:
- The depth of the n-ary tree is less than or equal to 1000.
- The total number of nodes is between [0, 10^4].
复制代码
- /*
- // Definition for a Node.
- class Node {
- public int val;
- public List<Node> children;
- public Node() {}
- public Node(int _val) {
- val = _val;
- }
- public Node(int _val, List<Node> _children) {
- val = _val;
- children = _children;
- }
- };
- */
- class Solution {
-
- int max;
- public int maxDepth(Node root) {
- if(root == null) return 0;
-
- int dep = 1;
- dfs(root,dep);
- return max;
- }
-
- public void dfs(Node root, int depth){
- if(depth > max) max = depth;
- if(root.children.size() == 0) return;
- int len = root.children.size();
-
- for(int i = 0; i< len; i++){
- if(root.children.get(i) != null){
- dfs(root.children.get(i), depth+1);
- }
- }
- }
- }
复制代码 |
|