/**
* TODO
*/
package com.xeezee.collection;
/**
* 循环队列
*
* @author luoqinglong
* @date 2012-7-31
*/
public class Queue {
private int itemCount;// 队中元素个数
private int front = 0;// 队头
private int rear = -1;// 队尾
private final long[] queueArray;
private int maxSize = 0;
public Queue(int caption) {
this.maxSize = caption;
this.itemCount = 0;
this.front = 0;
this.rear = -1;
this.queueArray = new long[caption];
}
public void insert(long j) {
if (this.rear == this.maxSize - 1) {
this.rear = -1;
}
this.queueArray[++this.rear] = j;
this.itemCount++;
}
public long remove() {
long temp = this.queueArray[this.front++];
if (this.front == this.maxSize) {
this.front = 0;
}
this.itemCount--;
return temp;
}
public long peekFront() {
return this.queueArray[this.front];
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Queue queue = new Queue(5);
queue.insert(111);
queue.insert(222);
queue.insert(333);
queue.insert(444);
queue.insert(555);
System.out.println(queue.peekFront());
queue.remove();
queue.remove();
queue.remove();
queue.insert(6666);
System.out.println(queue.peekFront());
}
}
分享到:
相关推荐
### Java循环队列的深入解析与实践应用 #### 循环队列概念解析 循环队列,作为一种高效的数据结构,广泛应用于计算机科学中,尤其是在Java编程语言中,它以其独特的性能优势,在各种算法和系统设计中占据了...
在Java中,队列的实现主要有三种:顺序队列、链式队列和循环队列。下面我们将详细探讨这三种队列的实现方式。 1. **顺序队列**: 顺序队列通常是基于数组实现的。在Java中,我们可以使用ArrayList或LinkedList来...
本篇文章将探讨如何在Java中使用数组实现一个循环队列,通过阅读《用数组实现的循环队列(java)》这篇博文,我们可以深入理解循环队列的工作原理以及其在实际编程中的应用。 循环队列是队列的一种变体,它巧妙地...
在Java或Android环境中,我们可以使用ArrayList或LinkedList等内置数据结构来实现循环队列,但为了更好地控制队列的头部和尾部,我们通常选择自定义一个类来实现。以下是一个简单的循环队列实现: ```java public ...
本文将深入探讨循环队列的概念、工作原理,并提供C、C++和Java三种语言的实现源码。 **循环队列概念** 循环队列是队列的一种优化版本,它利用数组的循环特性来模拟队列的操作。在循环队列中,队头元素和队尾元素的...
实现了循环队列数据结构的Java语言源代码,为充分利用向量空间,克服"假溢出"现象的方法是:将向量空间想象为一个首尾相接的圆环,并称这种向量为循环向量。存储在其中的队列称为循环队列。循环队列是把顺序队列...
用循环队列解决约瑟夫环问题减少用顺序表在出对是循环移动带来的空间复杂度
Java队列模拟实现是一个典型的计算机科学中的数据结构应用,它主要涉及了Java编程语言和队列数据结构。在这个工程中,开发者已经创建了一个基于图形用户界面(GUI)的应用程序,用于演示和操作队列的各种功能。以下...
在编程语言中,如C、C++、Java或Python,我们可以用不同的方式实现数组循环队列。例如,在C++中,可以定义一个结构体或类,包含数组、队头和队尾指针,以及相关的成员函数来执行上述操作。在Python中,可以使用内置...
循环队列是计算机科学中数据结构的一个重要概念,特别是在算法设计和实现中占有核心地位。...这份文档可能会涵盖循环队列的理论介绍、示例演示以及完整的C/C++或Java代码实现,帮助你更好地理解和应用循环队列。
用循环队列实现杨辉三角的输出。通过该程序可以让你对循环队列有一定的理解。
java数组实现循环队列。包括入队, 出队,输出队列。 队列先入先出。
Java 中提供了多种实现队列的方法,包括顺序队列、链式队列和循环队列等。下面我们将详细介绍每种队列的实现方法和特点。 一、顺序队列 顺序队列是指使用数组来实现队列的数据结构。它的特点是元素在数组中的位置...
在编程实现上,可扩充循环队列可以使用各种编程语言来构建,如C、C++、Java、Python等。关键在于理解和实现队列的扩展机制,以及正确处理边界条件和队列扩展时的数据迁移。在设计时,还需要考虑内存管理和并发安全...
在Java中,我们可以使用数组来模拟循环队列。这里我们将讨论如何在不牺牲一个空间且不采用求模运算的情况下实现循环队列,并探讨如何优化其性能。 首先,我们看到类`circle_queue1`是循环队列的实现,它包含了一个...
基于Java数组实现循环队列的两种方法小结 本文讲解了基于Java数组实现循环队列的两种方法,旨在帮助读者更好地理解循环队列的实现机理和设计思想。循环队列是一种特殊的队列结构,能够充分利用数组的存储空间,避免...
本文将深入探讨如何使用C语言和数据结构中的循环队列来实现括号匹配的算法。 首先,我们需要了解什么是循环队列。循环队列是一种线性数据结构,它利用数组的“首尾相接”特性,模拟一个无限的队列。当队列的末尾被...
利用循环队列来实现银行排队系统,对进入队列的客户分为VIP和普通客户,其中VIP优先出队。能实现的功能如下1.新客户排队等待服务 2.客户离开排队服务 3.查询当前客户前面还有几人 4.查询截止目前总共办理多少客户 注...
设一循环队列Queue,只有头指针front,不设尾指针,另设一个内含元素个数的计数器,试写出相应的进队、出队算法。
在普通顺序队列中,为了避免“假溢出”现象,即数组未满但队尾指针已到数组末尾导致无法继续添加元素,可以将数组设计成循环结构,即形成循环队列。循环队列解决了空间浪费的问题,但需要额外的一个存储单元来区分队...