zoukankan      html  css  js  c++  java
  • 两个栈实现一个队列

    package twostack;

    import java.util.Stack;

    class QuenenStack {
    Stack<Object> a;
    Stack<Object> b;

    public QuenenStack(Stack<Object> a,Stack<Object> b) {
    super();
    this.a = a;
    this.b = b;
    }
    //入队列
    public void push(Object data) {
    a.push(data);
    }

    //出队列
    public Object pop() {
    //把a栈倒入b栈
    while(!a.empty()) {
    b.push(a.pop());
    }
    //pop出b栈栈顶元素
    Object o=b.pop();
    //把b栈倒入a栈
    while(!b.empty()) {
    a.push(b.pop());
    }
    return o;
    }

    }
    public class TwoStackToQueue {

    public static void main(String[] args) {
    Stack<Object> a=new Stack<Object>();
    Stack<Object> b=new Stack<Object>();
    QuenenStack qs=new QuenenStack(a,b);
    qs.push(1);
    qs.push(2);
    qs.push(3);
    System.out.println(qs.pop());
    System.out.println(qs.pop());
    qs.push(4);
    System.out.println(qs.pop());
    System.out.println(qs.pop());
    }

    }

  • 相关阅读:
    模块jieba库的使用
    模块wordcloud库的使用
    爬取哔哩哔哩网站弹幕
    爬虫讲解
    基本统计值计算
    数据类型及元素元组
    pyinstall的安装及使用
    面向对象介绍
    re模块
    logging模块
  • 原文地址:https://www.cnblogs.com/smailjunk/p/8911086.html
Copyright © 2011-2022 走看看