알고리즘

[트리] 이진 트리의 최대 깊이 (104. Maximum Depth of Binary Tree)

심재철 2020. 6. 21. 12:25

Given a binary 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.

Note: A leaf is a node with no children.

Example:

Given binary tree [3,9,20,null,null,15,7],

    3
   / \
  9  20
    /  \
   15   7
return its depth = 3.

 

var maxDepth = function(root) {
    let depth = 0;
    const dfs = (root, len) => {
        if(!root) {
            depth = Math.max(len - 1, depth);
            return;
        }
        
        dfs(root.left, len + 1);
        dfs(root.right, len + 1);
    }
    dfs(root, 1);
    
    return depth;
};