Maximum Depth of Binary Tree
Tree BFS
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.

Solution
from collections import deque
class Solution:
def maxDepth(self, root: TreeNode) -> int:
if root is None:
return 0
depthCount = 0
queue = deque()
queue.append(root)
while queue:
depthCount+=1
levelSize = len(queue)
for _ in range(levelSize):
currentNode = queue.popleft()
if currentNode.left:
queue.append(currentNode.left)
if currentNode.right:
queue.append(currentNode.right)
return depthCount
#Time: O(n)
#Space: O(n)
Last updated
Was this helpful?