Skip to content

Latest commit

 

History

History
41 lines (32 loc) · 826 Bytes

File metadata and controls

41 lines (32 loc) · 826 Bytes

N-ary Tree Level Order Traversal

Description

link


Solution BFS

  • See Code traditional BFS.

Code

Complexity T : O(n) M : O(max(level lenth))

"""
# Definition for a Node.
class Node:
    def __init__(self, val, children):
        self.val = val
        self.children = children
"""
class Solution:
    def levelOrder(self, root: 'Node') -> List[List[int]]:
        if not root:
            return []
        res = [[root.val]]
        level = [root]
        while level:
            new_level = []
            for node in level:
                new_level += node.children
            if new_level:
                res.append([node.val for node in new_level])
            level = new_level
        return res