leetcode--589. N叉树的前序遍历 非递归实现

由于本人菜指针不熟,导致指针指的我头疼,递归一边先压入另一边,使得被递归的点最后压入即可。最基本的非递归树的DFS

代码

vector<int> preorder(Node* root) {
       vector<int> a;
        if(root!=NULL)
        {stack <Node *> s;

        Node *node;
        s.push(root);
        while(!s.empty()){
        node=s.top();
       
        {a.push_back(node->val);}
        s.pop();
        for(int i = node->children.size()-1;i >= 0;i--){
                s.push(node->children[i]);
        }
        }
        }
         return a;
    }

猜你喜欢

转载自www.cnblogs.com/biubiuWham/p/10122100.html