时间:2021-05-20
复习了下数据结构,用Java的数组实现一下循环队列。
队列的类
//循环队列class CirQueue{ private int QueueSize; private int front; private int rear; private int[] queueList ; public CirQueue(int QueueSize){ this.QueueSize = QueueSize; queueList = new int[QueueSize]; front = 0; rear = 0; } //获取队列头元素 public int getQueueElement(){ //如果队列不为空,返回队头元素,否则抛出异常提示队列为空 int element = -1; if(!isEmpty()){ element = queueList[front]; return element; } else { System.out.println("队列为空"); return -1; } } //出队 public int deQueue(){ int element = -1; if(!isEmpty()){ element = queueList[front]; front =(front+1)%QueueSize; return element; } else { System.out.println("队列为空"); return -1; } } //入队 public void enQueue(int element){ //如果队列未满,添加元素到队尾,否则提示队列已满 if(!isFull()){ queueList[rear] = element ; rear = (rear+1)%QueueSize; } else { System.out.println("队列已满"); } } //判断队列是否为空 public boolean isEmpty(){ boolean b = false; if(rear == front) b = true; return b; } //判断队列是否已满 public boolean isFull(){ boolean b = false; if((rear+1)%QueueSize == front) b = true; return b; }}创建对象并测试
package com.test;import java.util.*;public class StructTest { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub //新建并初始化存储空间为3的循环队列(方便判断队满条件,浪费一个数组空间) CirQueue cirQueue = new CirQueue(4); //入队3个元素 cirQueue.enQueue(1); cirQueue.enQueue(2); cirQueue.enQueue(3); //获取队头元素,获取 但不改变队列 int temp = cirQueue.getQueueElement(); System.out.println(temp); //出队 获取队头元素,并且队头指针往后移一位 temp = cirQueue.deQueue(); System.out.println(temp); //再次获取队头元素 temp = cirQueue.getQueueElement(); System.out.println(temp); }}输出:
112以上这篇Java用数组实现循环队列的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例为大家分享了Java1.8使用数组实现循环队列的具体代码,供大家参考,具体内容如下1、引入使用数组实现循环队列,功能如下:1)isFull():队列满?
用java实现循环队列的方法:1、添加一个属性size用来记录眼下的元素个数。目的是当head=rear的时候。通过size=0还是size=数组长度。来区分队
这篇文章主要介绍了java数组实现队列及环形队列实现过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下代
Summary什么是环形队列实现环形队列图示过程golang版本代码实现过程参考全部代码什么是环形队列在一个指定大小的数组里循环写入数据,借用二个指针分别实现入
本文实例讲述了JS使用数组实现的队列功能。分享给大家供大家参考,具体如下:functionQueue(){this.dataStor