public void inorderItr(Node root){
        Deque<Node> stack = new LinkedList<Node>();
        Node node = root;
        while(true){
            if(node != null){
                stack.addFirst(node);
                node = node.left;
            }
            else{
                if(stack.isEmpty()){
                    break;
                }
                node = stack.pollFirst();
                System.out.println(node.data);
                node = node.right;
            }
        }
    }
Youtube link - https://youtu.be/nzmtCFNae9k
Youtube link - https://youtu.be/elQcrJrfObg
Youtube link - https://youtu.be/qT65HltK2uE
Youtube link - https://youtu.be/ZM-sV9zQPEs

http://www.geeksforgeeks.org/inorder-tree-traversal-without-recursion/
http://www.geeksforgeeks.org/inorder-tree-traversal-without-recursion-and-without-stack/
http://www.geeksforgeeks.org/iterative-preorder-traversal/
src/com/interview/tree/TreeTraversals.java