题目:用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。
1 public class Solution { 2 Stack<Integer> stack1 = new Stack<Integer>(); 3 Stack<Integer> stack2 = new Stack<Integer>(); 4 5 public void push(int node) { 6 stack1.push(node); 7 } 8 9 public int pop() { 10 if(stack2.size()==0){ 11 while(stack1.size()!=0){ 12 stack2.push(stack1.pop()); 13 } 14 } 15 return stack2.pop(); 16 } 17 }
相关题目:两个栈实现一个队列
1 public class Solution { 2 Queue<Integer> queue1= new Queue<Integer>(); 3 Queue<Integer> queue2= new Queue<Integer>(); 4 5 public void push(int node) { 6 if(queue1.isEmpty() && queue2.isEmpty()){ 7 queue1.add(element); 8 } 9 10 if(queue1.isEmpty()){ 11 queue2.add(element); 12 } 13 14 if(queue2.isEmpty()){ 15 queue1.add(element); 16 } 17 } 18 19 public int pop() { 20 if(queue1.isEmpty() && queue2.isEmpty()){ 21 return; 22 } 23 24 if(queue1.isEmpty()){ 25 while(queue2.size()>1){ 26 queue1.add(queue2.poll()); 27 } 28 return queue2.poll(); 29 } 30 31 if(queue2.isEmpty()){ 32 while(queue1.size()>1){ 33 queue2.add(queue1.poll()); 34 } 35 return queue1.poll(); 36 } 37 38 } 39 }
博客围绕用两个栈实现一个队列展开,需完成队列的Push和Pop操作,队列元素为int类型,还提及了相关题目,同时给出了转载链接。
933

被折叠的 条评论
为什么被折叠?



