Queue 循环队列代码 java
2021/11/24 1:11:03
本文主要是介绍Queue 循环队列代码 java,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1 package Queue; 2 3 public class Queue { 4 private int maxSize; 5 private int front; 6 private int rear; 7 private int[] arr; 8 9 public Queue(int maxSize){ 10 this.maxSize=maxSize; 11 arr=new int[maxSize]; 12 } 13 14 public void init(){ 15 front=0; 16 rear=0; 17 } 18 19 public boolean isFull(){ 20 return (rear+1)%maxSize==front; 21 } 22 23 public boolean isEmpty(){ 24 return rear==front; 25 } 26 27 public void add(int value){ 28 if(isFull()) 29 System.out.println("isFull"); 30 else{ 31 arr[rear]=value; 32 rear=(rear+1)%maxSize; 33 System.out.println("add: "+value); 34 } 35 } 36 37 public void delete(){ 38 if(isEmpty()) 39 System.out.println("isEmpty"); 40 else{ 41 System.out.println("delete: "+arr[front]); 42 front=(front+1)%maxSize; 43 } 44 } 45 46 public void printQueue(){ 47 if(isEmpty()){ 48 System.out.println("isFull"); 49 }else{ 50 System.out.print("getQueue: "); 51 for (int i = (front+1)%maxSize; i <= rear; i=(i+1)%maxSize) { 52 System.out.print(arr[i]+" "); 53 } 54 System.out.println(); 55 } 56 } 57 58 public int getHead(){ 59 if(isEmpty()){ 60 System.out.println("isEmpty"); 61 return 0; 62 } 63 return arr[front]; 64 } 65 }
在循环队列代码中:
front作为队列头部,也就是数组尾部。
rear作为队列尾部,也就是数组头部。
循环队列中具体判满条件为:数组长度等于maxSize-1,(有一个单位作为约定,数组无法被填满,即当数组长度等于maxSize-1时,就默认此队列满了)
这篇关于Queue 循环队列代码 java的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-04百万架构师第六课:设计模式:策略模式及模板模式
- 2025-01-04百万架构师第七课:设计模式:装饰器模式及观察者模式
- 2025-01-04适用于企业管理的协作工具API推荐
- 2025-01-04挑战16:被限流的CPU
- 2025-01-03企业在选择工具时,如何评估其背后的技术团队
- 2025-01-03Angular中打造动态多彩标签组件的方法
- 2025-01-03Flask过时了吗?FastAPI才是未来?
- 2025-01-0311个每位开发者都应知道的免费实用网站
- 2025-01-03从REST到GraphQL:为什么以及我是如何完成转型的
- 2025-01-03掌握RAG:从单次问答到连续对话