剑指offer-用两个栈实现队列

import java.util.Stack;

//这道题的关键是,理解栈和队列两种数据结构的实现方式即可
//因为栈是先进后出的,而队列是先进先出的,所以用个中间栈转换一次即可
public class Solution {
    //新建两个栈
    Stack<Integer> stack1 = new Stack<Integer>();
    Stack<Integer> stack2 = new Stack<Integer>();
    
    //放入元素
    public void push(int node) {
        stack1.push(node);
    }
    //出栈,将第一个入栈的元素弹出后,放入第二个栈
    public int pop() {
    if(stack2.size()<=0){
        while(stack1.size() != 0){
            stack2.push(stack1.pop());
        }
    }
      //最后,出栈即可 return stack2.pop(); } }

  

posted @ 2021-03-13 21:17  CEO雷总  阅读(35)  评论(0编辑  收藏  举报