public static void main(String args[]){
        BinaryTree bt = new BinaryTree();
        Node node = null;
        node = bt.addNode(10, node);
        node = bt.addNode(-5, node);
        node = bt.addNode(7, node);
        node = bt.addNode(20, node);
        node = bt.addNode(3, node);
        node = bt.addNode(14, node);
        NextInorderSuccessorIterator nis = new NextInorderSuccessorIterator(node);
        while(nis.hasNext()){
            System.out.println(nis.next());
        }
    }
http://www.glassdoor.com/Interview/Create-an-iterator-to-traverse-a-binary-tree-When-the-next-function-is-called-on-the-binary-tree-return-the-value-at-the-QTN_674695.htm
null tree.
src/com/interview/tree/NextInorderSuccessorIterator.java