N叉树的前序遍历

 递归法:

/*
// 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> res = new ArrayList();

    public List<Integer> preorder(Node root) {
        dns(root);
        return res;
    }

    public void dns(Node node){
        if(node == null){
            return;
        }
        res.add(node.val);
        List<Node> nodeList = node.children;
        if(nodeList == null){
            return;
        }
        for(int i = 0;i < nodeList.size();i++){
            dns(nodeList.get(i));
        }
    }


}

猜你喜欢

转载自blog.csdn.net/qq_36428821/article/details/112855677