11. Maximum Depth of Binary Tree
easyAsked at YelpCompute the maximum depth of a binary tree — Yelp uses this to gauge whether candidates can recurse cleanly over a category-tree before walking deeper geo-indexing problems.
By Alex Chen, Founder, InterviewChamp.AI · Last verified
Problem
Given the root of a binary tree, return its maximum depth, which is the number of nodes along the longest path from the root down to the farthest leaf node.
Constraints
The number of nodes is in [0, 10^4]-100 <= Node.val <= 100
Examples
Example 1
root = [3,9,20,null,null,15,7]3Example 2
root = [1,null,2]2Approaches
1. BFS level count
Walk the tree level by level and count the levels visited.
- Time
- O(n)
- Space
- O(n)
let q = root ? [root] : [], d = 0;
while (q.length) {
const next = [];
for (const n of q) { if (n.left) next.push(n.left); if (n.right) next.push(n.right); }
q = next; d++;
}
return d;Tradeoff:
2. DFS recursion
Depth of a node is 1 + max(depth(left), depth(right)). Recurse from the root.
- Time
- O(n)
- Space
- O(h)
function maxDepth(root) {
if (!root) return 0;
return 1 + Math.max(maxDepth(root.left), maxDepth(root.right));
}Tradeoff:
Yelp-specific tips
Yelp interviewers will pivot this into geo indexing — be ready to discuss how depth-bounded recursion maps to bounded quad-tree traversal for nearby-business lookups.
Solve it now
Free. No sign-up. Python and JavaScript run instantly in your browser.
Practice these live with InterviewChamp.AI
Drill Maximum Depth of Binary Tree and other Yelp interview questions under real-loop conditions with instant feedback on your reasoning, complexity claims, and code.
Practice these live with InterviewChamp.AI →