Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit d3bbbcf

Browse files
committed
Added Stack Using Queues prog
1 parent eacc842 commit d3bbbcf

File tree

2 files changed

+60
-0
lines changed

2 files changed

+60
-0
lines changed
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
package stacks_queues;
2+
3+
import java.util.ArrayDeque;
4+
import java.util.Queue;
5+
6+
public class StackUsingQueues {
7+
8+
Queue<Integer> queue1 = new ArrayDeque<>();
9+
Queue<Integer> queue2 = new ArrayDeque<>();
10+
Queue<Integer> queue3 = new ArrayDeque<>();
11+
12+
void push(int data){
13+
queue1.add(data);
14+
}
15+
16+
boolean isEmpty(){
17+
return (queue1.isEmpty() && queue2.isEmpty());
18+
}
19+
20+
int pop() throws Exception{
21+
if (isEmpty()) {
22+
throw new Exception("Empty Stack");
23+
}
24+
25+
while(queue1.size()>1){
26+
queue2.add(queue1.remove());
27+
}
28+
int value = queue1.poll();
29+
30+
queue3 = queue1;
31+
queue1 = queue2;
32+
queue2 = queue3;
33+
34+
return value;
35+
36+
}
37+
38+
public static void main(String[] args) throws Exception {
39+
40+
StackUsingQueues stack1 = new StackUsingQueues();
41+
stack1.push(3);
42+
stack1.push(5);
43+
stack1.push(9);
44+
System.out.println(stack1.pop());
45+
stack1.push(10);
46+
stack1.push(16);
47+
System.out.println(stack1.pop());
48+
System.out.println(stack1.pop());
49+
50+
}
51+
52+
}

‎src/stacks_queues/package-info.java‎

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
/**
2+
*
3+
*/
4+
/**
5+
* @author whamsy
6+
*
7+
*/
8+
package stacks_queues;

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /