在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

怎么用Java栈实现队列

147次阅读
没有评论

共计 1277 个字符,预计需要花费 4 分钟才能阅读完成。

使用 Java 的栈来实现队列可以通过两个栈来实现。一个栈用来存储队列的元素,另一个栈用来辅助操作。

具体实现步骤如下:

  1. 创建两个栈,一个用于存储队列的元素,命名为stack1,另一个用于辅助操作,命名为stack2。
  2. 实现队列的入队操作 enqueue,即将元素添加到stack1 中。
  3. 实现队列的出队操作 dequeue,首先判断stack2 是否为空,若为空,则将 stack1 中的元素依次弹出并压入 stack2 中,然后从 stack2 中弹出栈顶元素作为出队元素;若 stack2 不为空,则直接从 stack2 中弹出栈顶元素作为出队元素。
  4. 实现队列的获取队首元素操作 peek,同样需要先判断stack2 是否为空,若为空,则将 stack1 中的元素依次弹出并压入 stack2 中,然后获取 stack2 的栈顶元素作为队首元素;若 stack2 不为空,则直接获取 stack2 的栈顶元素作为队首元素。
  5. 实现队列的判空操作 isEmpty,判断stack1stack2是否都为空,若是,则队列为空;否则,队列不为空。

下面是 Java 代码的实现:

import java.util.Stack;

public class QueueWithStacks {private Stack<Integer> stack1;
    private Stack<Integer> stack2;

    public QueueWithStacks() {stack1 = new Stack<>();
        stack2 = new Stack<>();}

    public void enqueue(int element) {stack1.push(element);
    }

    public int dequeue() {if (stack2.isEmpty()) {while (!stack1.isEmpty()) {stack2.push(stack1.pop());
            }
        }
        return stack2.pop();}

    public int peek() {if (stack2.isEmpty()) {while (!stack1.isEmpty()) {stack2.push(stack1.pop());
            }
        }
        return stack2.peek();}

    public boolean isEmpty() {return stack1.isEmpty() && stack2.isEmpty();
    }
}

使用示例:

public class Main {public static void main(String[] args) {QueueWithStacks queue = new QueueWithStacks();
        queue.enqueue(1);
        queue.enqueue(2);
        queue.enqueue(3);
        System.out.println(queue.dequeue());  // 输出: 1
        System.out.println(queue.peek());  // 输出: 2
        System.out.println(queue.isEmpty());  // 输出: false
    }
}

以上就是使用 Java 的栈实现队列的方法。

丸趣 TV 网 – 提供最优质的资源集合!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-13发表,共计1277字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 99久久国产宗和精品1上映 | 天堂а√在线中文在线最新版 | 国产午夜精品鲁丝片 | www.伊人久久 | 国产成人在线观看免费网站 | 午夜精品久久久久久99热 | 国产69精品久久久久777 | 在线天堂资源www在线中文 | 粉嫩av国产一区二区三区 | 日本黄色大片免费观看 | 日韩欧美中文字幕在线播放 | 亚洲成人免费视频在线 | 日韩精品久久无码中文字幕 | 制服丝袜人妻中文字幕在线 | 日本jjzz| 一边摸一边抽搐一进一出视频 | 91日韩精品天海翼在线观看 | 女人脱了内裤趴开腿让男躁 | 天天影视色香欲综合网 西瓜影音 | 爽妇综合网| 91se在线看片国产免费观看 | 超级碰碰青草久热国产 | 18禁美女裸体免费网站 | 国内精品久久久久伊人av | 大桥未久亚洲无av码在线 | 国内外成人在线视频 | 国产一码二码免费观看 | 亚洲一区二区三区日本久久九 | www.黑丝| 两个人www在线观看免费视频 | 理论片一级| 四虎欧美在线观看免费 | 香蕉免费一区二区三区在线观看 | 成av人片一区二区三区久久 | 亚洲高清偷拍一区二区三区 | 日韩欧美国产一区二区三区 | 一级特黄国产高清毛片97看片 | 后入内射国产一区二区 | 婷婷五月色综合香五月 | 日韩精品免费看 | 毛片在线免费观看网站 |