LC 0429 [M] N ary Tree Level Order Traversal - ALawliet/algorithms GitHub Wiki
like a regular level order traversal only difference is a for loop for n nodes instead of just a left and right node
"""
# Definition for a Node.
class Node:
def __init__(self, val=None, children=None):
self.val = val
self.children = children
"""
from queue import Queue
class Solution:
def levelOrder(self, root: 'Node') -> List[List[int]]:
if not root: return []
res = []
Q = Queue()
Q.put(root)
while not Q.empty():
level_size = Q.qsize()
level = []
for _ in range(level_size):
node = Q.get()
level.append(node.val)
for child in node.children:
Q.put(child)
res.append(level)
return res