网站首页 > 文章中心 > 其它

Java代码实现循环队列

作者:小编 更新时间:2023-09-04 15:19:44 浏览量:363人看过

Java如何实现一个循环队列保存另一个类的对象

这里说下我的思路.循环队列.首先你要想清楚队列.队列有多种实现方式.链表和数组.

如果是固定的个数那可以用数组实现否则用双向循环链表实现. 具体说实现方式可以参考link list或arrayDequeue

用java实现循环队列?

简单写了下,希望你能看明白

import java.util.ArrayList;

Java代码实现循环队列-图1

public class SeqQueue {

ArrayListString list;

public SeqQueue() {

list = new ArrayListString();

}

public String getFirst() {

if (!list.isEmpty()) {

String s = list.get(0);

Java代码实现循环队列-图2

list.remove(0);

return s;

return null;

public void insertLast(String s) {

list.add(s);

public static void main(String[] args) {

SeqQueue seq = new SeqQueue();

seq.insertLast("111");

System.out.println(seq.getFirst());

Java如何使用数组实现循环队列的案例

class Element{

int id;

String name;

Element(int a,String n){

id=a;name=n;

class SeqQueue{

int first,last,maxsize;

Element queue[];

SeqQueue(int i){

maxsize=i;

first=last=-1;

queue=new Element[i];

public void clear(){//置空

public boolean isEmpty(){//判空

Java代码实现循环队列-图3

if(first==-1)return true;

else return false;

public Element getFirst(){//取队列头元素

if(first==-1)return null;

else return queue[first+1];

public boolean isFull(){//判满

if((last+1)%maxsize==first)return true;

public boolean enQueue(Element e){//入队

if(this.isFull())return false;

if(this.isEmpty())

first=last=0;

else

last=(last+1)%maxsize;

queue[last]=e;

return true;

public Element deQueue(){//出队

Element t=queue[first];

if(this.isEmpty())return null;

if(first==last){

queue[first]=null;

this.clear();

return t;

first=(first+1)%maxsize;

public int getLength(){//队列长度

if(last=first)return last-first+1;

else return maxsize-(first-last)+1;

int i,j;

for (i=first,j=0;jthis.getLength();i=(i+1)%maxsize,j++)

System.out.println(queue[i].id);

以上就是土嘎嘎小编为大家整理的Java代码实现循环队列相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章