題目說明:給一個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;
}
}