iT邦幫忙

2022 iThome 鐵人賽

DAY 25
0

題目說明:給一個n-array的樹,要你求出它的postorder traversal(後序追蹤)

Case 1:

Input: root = [1,null,3,2,4,null,5,6]
Output: [5,6,3,2,4,1]

Case 2:

Input: root = [1,null,2,3,4,5,null,null,6,7,null,8,null,9,10,null,null,11,null,12,null,13,null,null,14]
Output: [2,6,14,11,7,3,12,8,4,13,9,10,5,1]

解題思路:之前有寫過一篇關於postorder的文章,這裡就不再多加說明。

附上程式碼
Java

/*
// Definition for a Node.
class Node {
    public int val;
    public List<Node> children;

    public Node() {}

    public Node(int _val) {
        val = _val;
    }

    public Node(int _val, List<Node> _children) {
        val = _val;
        children = _children;
    }
};
*/

class Solution {
    List<Integer> l =new ArrayList<Integer>();
    public List<Integer> postorder(Node root) {
        if(root!=null){
            for(Node n:root.children)
            {
                postorder(n);
            }
            l.add(root.val);
        }
        return l;
    }
}

上一篇
Day 24 A Number After a Double Reversal
下一篇
Day 26 Maximum Depth of Binary Tree
系列文
從leetcode學習資料結構和演算法31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言