public static void main(String args[]){
        Deque<Integer> stack = new LinkedList<Integer>();
        stack.push(1);
        stack.push(2);
        stack.push(3);
        stack.push(4);
        stack.push(5);
        stack.push(6);
        
        Iterator<Integer> itr =  stack.iterator();
        while(itr.hasNext()){
            System.out.println(itr.next());
        }
        
        ReverseStackUsingRecursion rsu = new ReverseStackUsingRecursion();
        rsu.reverse(stack);
        
        itr =  stack.iterator();
        while(itr.hasNext()){
            System.out.println(itr.next());
        }
        
    }
http://www.geeksforgeeks.org/reverse-a-stack-using-recursion/
src/com/interview/stackqueue/ReverseStackUsingRecursion.java