本文主要記錄一下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。code