序
本文主要記錄一下leetcode樹之N叉樹的前序周遊
題目
給定一個 N 叉樹,傳回其節點值的前序周遊。例如,給定一個 3叉樹 :![](https://assets.leetcode-cn.com/aliyun-lc-upload/uploads/2018/10/12/narytreeexample.png)傳回其前序周遊: [1,3,5,6,2,4]。說明: 遞歸法很簡單,你可以使用疊代法完成此題嗎?來源:力扣(LeetCode)連結:https://leetcode-cn.com/problems/n-ary-tree-preorder-traversal著作權歸領扣網絡所有。商業轉載請聯系官方授權,非商業轉載請注明出處。
複制
題解
/*// 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> result = new ArrayList<Integer>(); public List<Integer> preorder(Node root) { if(root == null) { return result; } result.add(root.val); for(Node child:root.children){ preorder(child); } return result; }}
複制
小結
這裡采用遞歸的方法,與二叉樹前序周遊不同的時,N叉樹不是周遊左右子樹,而是周遊其children。
doc
- N叉樹的前序周遊