gary@interview:~/interview/coding/429-n-ary-tree-l….md$
$ cat ./coding/429-n-ary-tree-level-order-traversal.md
[Coding]

429. N-ary Tree Level Order Traversal

────────────────────────────────────────────────────────────

429. N-ary Tree Level Order Traversal

可以先做這題 116. Populating Next Right Pointers in Each Node

"""
# Definition for a Node.
class Node:
    def __init__(self, val=None, children=None):
        self.val = val
        self.children = children
"""

class Solution:
    def levelOrder(self, root: 'Node') -> List[List[int]]:
        if not root:
            return root
        queue = deque([root])
        ans = []
        level = 0
        while queue:
            size = len(queue)
            ans.append([])
            
            for i in range(size):
                node = queue.popleft()
                ans[level].append(node.val)
                for child in node.children:
                    queue.append(child)
            level += 1
        return ans
"""
# Definition for a Node.
class Node:
    def __init__(self, val=None, children=None):
        self.val = val
        self.children = children
"""

class Solution:
    def levelOrder(self, root: 'Node') -> List[List[int]]:
        if not root:
            return root
        queue = deque([root])
        ans = defaultdict(list)
        level = 0
        while queue:
            size = len(queue)
            for i in range(size):
                node = queue.popleft()
                ans[level].append(node.val)
                for child in node.children:
                    queue.append(child)
            level += 1
        return ans.values()

--tags#Tree
$ ls ./coding/ | grep -v 429-n-ary-tree-level-order-traversal
265. Paint House II256. Paint House143. Reorder List1762. Buildings With an Ocean View
← cd ../codingcd ~