(学习java)顺序循环队列的简易实现
来源:互联网 发布:中交二公院 知乎 编辑:程序博客网 时间:2024/06/05 04:54
//顺序结构的队列(循环队列)public class SeQueue {public static void main(String[] args) {cycleQueue c = new cycleQueue();c.pushQuere(1);c.pushQuere(2);c.pushQuere(3);c.pushQuere(5);c.pushQuere(6);c.listQueue();}public static class cycleQueue{//定义数组结构存储元素private Object[] elementdata;//定义队头private int front;//定义队尾private int rear;//定义长度private int size;//定义当前容量private int capacity;//默认创建容量为5的数组public cycleQueue(){elementdata = new Object[5];capacity = 5;}//自定义容量数组public cycleQueue(int capacity){elementdata = new Object[capacity+1];this.capacity = capacity+1;}//入队public<T> void pushQuere(T data){//判断队列是否已满if(isFull()){System.out.println("队列已满"+data+"无法添加");}else{elementdata[rear] = data;rear = (rear + 1)%capacity;size++;}}//出队public<T> T popQueue(){if(isEmpty()){System.out.println("队列已空");return null;}else{T data = (T) elementdata[front];front = (front+1)%capacity;size--;return data;}}//遍历队列public void listQueue(){if(isEmpty()){System.out.println("空队列");}else{if(front < rear){for(int i=front;i<rear;i++){if(i == rear-1){System.out.println(elementdata[i]);}else{System.out.print(elementdata[i] + "<-");}}}else{int temp = front;while(true){temp++;if(temp > capacity){temp = temp%capacity;}if(temp == rear){break;}if(temp == rear-1){System.out.println(elementdata[temp]);}else{System.out.print(elementdata[temp] + "<-");}}}}}//清空队列public void setClear(){front = rear;size = 0;}//判断队列是否已满public boolean isFull(){return (rear+1)%capacity == front;}//判断队列是否为空public boolean isEmpty(){return front == rear;}//查看队列长度public int getSize(){return size;}//查看当前队列容量public int getCapacity(){return capacity-1;}}}
阅读全文
0 0
- (学习java)顺序循环队列的简易实现
- 数据结构学习----顺序循环队列(Java实现)
- 循环顺序队列的实现
- 顺序循环队列的实现
- java队列实现(顺序队列、链式队列、循环队列)
- java队列实现(顺序队列、链式队列、循环队列)
- [Java算法分析与设计]顺序循环队列的实现
- 数据结构Java实现07----队列:顺序队列&顺序循环队列、链式队列、顺序优先队列
- 数据结构Java实现07----队列:顺序队列&顺序循环队列、链式队列、顺序优先队列
- 数据结构Java实现07----队列:顺序队列&顺序循环队列、链式队列、顺序优先队列
- 数据结构Java实现07----队列:顺序队列&顺序循环队列、链式队列、顺序优先队列
- Java实现链式队列,顺序队列,循环队列
- 数据结构学习笔记 --- 队列(循环队列-队列的顺序表示和实现)
- 数据结构学习笔记 --- 队列(循环队列-队列的顺序表示和实现)
- 数据结构Java实现——②队列--->队列的“奇葩”一循环顺序队列
- 顺序循环队列的c语言实现
- 循环队列的顺序表示和实现
- SqQueue循环队列的 顺序存储实现
- MATLAB R2012a课后习题答案
- Java学习笔记之反射
- UVA
- Python学习笔记5-面向对象相关
- 实验四——链栈
- (学习java)顺序循环队列的简易实现
- JavaScript 之 call和apply,bind 的模拟实现
- jdbc调用存储过程
- L1-005. 考试座位号
- requireJs使用初探及模块定义define函数的用法
- 使用 ExceptionDispatchInfo 捕捉并重新抛出异常
- 桥接模式概念和理解
- springboot生成自定义banner
- zabbix自动发现端口