Blogs Hub

by Sumit Chourasia | Oct 07, 2020 | Category :coding | Tags : algorithm binary-tree data-structure easy leetcode tree

Maximum Depth of N-ary Tree - Tree - Easy - LeetCode

Maximum Depth of N-ary Tree - Tree - Easy - LeetCode

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.
public class Node {
    public int val;
    public IList<Node> children;

    public Node() {}

    public Node(int _val) {
        val = _val;
    }

    public Node(int _val, IList<Node> _children) {
        val = _val;
        children = _children;
    }
}
*/

public class Solution {
    public int MaxDepth(Node root) {
        if(root == null){
            return 0;
        }
        int max = 0;
        foreach(var child in root.children){
            max = Math.Max(max, MaxDepth(child));
        }
        
        return 1+max;
    }
}

Time Complexity: O(n)

Space Complexity: O(1)

Contributed By: Sumit Chourasia
Minimum Path Sum - Array - Medium - LeetCode
Contributed By: Sumit Chourasia
Subsets II - Array - Medium - LeetCode
Contributed By: Sumit Chourasia
Game of Life - Array - Medium - LeetCode