Pages

Pre Order Tree Traversal

PreOrder =  root--> visit current-->push right -->push left repeat till stack empty

public void traversePreOrderWithoutRecursion() {
       
        Stack<Node> stack = new Stack<Node>();
       
        Node current = root;
     
        stack.push(root);

        while(! stack.isEmpty()) {

            current = stack.pop();
            visit(current.value);
           
            if(current.right != null)
                stack.push(current.right);
               
            if(current.left != null)
                stack.push(current.left);
        }