1. 程式人生 > 其它 >leetcode 429. N-ary Tree Level Order Traversal(N叉樹分層遍歷)

leetcode 429. N-ary Tree Level Order Traversal(N叉樹分層遍歷)

技術標籤:leetcodeleetcode

Given an n-ary tree, return the level order traversal of its nodes’ values.

Nary-Tree input serialization is represented in their level order traversal, each group of children is separated by the null value (See examples).

Example 1:
在這裡插入圖片描述
Input: root = [1,null,3,2,4,null,5,6]
Output: [[1],[3,2,4],[5,6]]

N分支樹的level遍歷

思路:
BFS

    public List<List<Integer>> levelOrder(Node root) {
        List<List<Integer>> result = new ArrayList<>();
        if(root == null) return result;
        Queue<Node> queue = new LinkedList<>();
        queue.offer(root);
        
        while
(!queue.isEmpty()) { int size = queue.size(); List<Integer> tmp = new ArrayList<>(); for(int i = 0; i < size; i++) { Node node = queue.poll(); tmp.add(node.val); for(Node child : node.children) { if
(child != null) { queue.offer(child); } } } result.add(tmp); } return result; }