Preorder Traversal without recursion

 

Preorder Traversal  without recursion

 

vector <int> preorder(Node* root)
{
    vector<int>v;
    stack<Node*>st;
   
    if(root==NULL)
       return v;
     
    st.push(root);
   
    while(!st.empty())
    {
        Node * temp;
        temp=st.top();
        st.pop();
       
        v.push_back(temp->data);
       
        if(temp->right)
           st.push(temp->right);
         if(temp->left)
           st.push(temp->left);
         
    }
   
    return v;
   
}

Comments

Popular posts from this blog

Amazing Subarrays(cpp,interviewbit)

Symmetric Tree(leetcode,cpp):

sum of left leaves in a tree(leetcode).