Reverse a Stack using Recursion
Code::
import java.util.Stack;
public class Test {
public static void main(String[] args) {
Stack<Integer> st = new Stack<Integer>();
st.add(1);
st.add(2);
st.add(3);
st.add(4);
System.out.println(st);
reverse(st);
System.out.println(st);
}
public static void reverse(Stack<Integer> s) {
if(s.size()==0) {
return;
}
int temp = s.pop();
reverse(s);
insert(s,temp);
}
public static void insert(Stack<Integer> s,int temp) {
if(s.size()==0) {
s.push(temp);
return;
}
int temp1 = s.pop();
insert(s,temp);
s.push(temp1);
}
}
Comments
Post a Comment