LC104 - Maximum Depth of Binary Tree

Problem

Given the root of a binary tree, return its maximum depth.

A binary tree's maximum depth is the number of nodes along the longest path from the root node down to the farthest leaf node.

Example

Input: root = [3,9,20,null,null,15,7]

Output: 3

Solution

def maxDepth(self, root: Optional[TreeNode]) -> int:
	
	def dfs(root, depth):
		if not root:
			return depth
		mDepth = max(dfs(root.left, depth+1), dfs(root.right, depth+1))
		return mDepth

	return dfs(root, 0)

Last updated