Leaderboard
Showing:
Preorder traversal (Iterative)
Medium Accuracy: 87.78% Submissions: 2607 Points: 4

Given a binary tree. Find the preorder traversal of the tree without using recursion.

Example 1

Input:
           1
         /   \
        2     3
      /  \
     4    5
Output: 1 2 4 5 3
Explanation:
Preorder traversal (Root->Left->Right) of 
the tree is 1 2 4 5 3.

Example 2

Input:
            8
          /   \
         1      5
          \    /  \
           7  10   6
            \  /
            10 6
Output: 8 1 7 10 5 10 6 6 
Explanation:
Inorder traversal (Root->Left->Right) 
of the tree is 8 1 7 10 5 10 6 6 .

 

Your task:

You don't need to read input or print anything. Your task is to complete the function preOrder() which takes the root of the tree as input and returns a list containing the preorder traversal of the tree, calculated without using recursion.

 

Expected time complexity: O(N)
Expected auxiliary space: O(N)

 

Constraints:
1 <= Number of nodes <= 105
1 <= Data of a node <= 105

to report an issue on this page.

Editorial

We strongly recommend solving this problem on your own before viewing its editorial. Do you still want to view the editorial?

Yes

All Submissions

My Submissions:

Login to access your submissions.

Preorder traversal (Iterative)

Output Window