Queue (队列)
来源:互联网 发布:php接收不到ajax传值 编辑:程序博客网 时间:2024/05/17 04:16
/** * 队列 * */public class Queue {/** 一般队列队头为0位置,队尾为-1位置, * 在队尾插入rear上移一位, * 当rear等于队列总长减1时,则rear被置为-1位置, * 在队头删除front上移一位 * 当front等于队列总长时,则front被置为0位置*/private int maxSize;//最大长度private long[] queArray;//初始化一个队列private int front;//队头private int rear;//队尾private int nItems;//队列中当前数据项的个数public Queue(int s){maxSize=s;queArray=new long[maxSize];front=0;rear=-1;nItems=0;}public void insert(long j){if(rear==maxSize-1){rear=-1;}System.out.println("rear1:"+rear);queArray[++rear]=j;System.out.println("rear2:"+rear);nItems++;}public long remove(){long temp=queArray[front++];System.out.println("front1:"+front);if(front==maxSize){front=0;}System.out.println("front2:"+front);nItems--;return temp;}public long peekFront(){return queArray[front];}public boolean isEmpty(){return (nItems==0);}public boolean isFull(){return (nItems==maxSize);}public int size(){return nItems;}}
/** * 队列的实现 * */public class QueueApp {public static void main(String[] args) {Queue theQueue=new Queue(5);theQueue.insert(10);theQueue.insert(20);theQueue.insert(30);theQueue.insert(40);theQueue.remove();theQueue.remove();theQueue.remove();theQueue.insert(50);theQueue.insert(60);theQueue.insert(70);theQueue.insert(80);while(!theQueue.isEmpty()){long n=theQueue.remove();System.out.println(n);System.out.println(" ");}System.out.println(" ");}}
0 0
- queue队列-printer queue
- 队列(queue)
- Queue---队列
- 队列(Queue)
- Queue队列
- Queue队列
- Queue (队列)
- (队列)queue
- 队列Queue
- 队列(queue)
- queue队列
- 队列(Queue)
- 队列<queue>
- 队列queue
- queue 队列
- 队列Queue
- Queue队列
- queue队列
- Linux core dumps 的生成
- ArcSDE分布式安装时服务创建和启动
- 启动另外的一个应用程序的Activity(三种方式)
- BZOJ[Sdoi2010]大陆争霸 最短路变形
- 单元测试不是梦,Android+PowerMock系列(1) —— 在Eclipse里搭建测试环境
- Queue (队列)
- adb devices :???????????? no permissions 方法
- IIS应用地址池监控
- Android 中的各个Image
- SDN(软件定义网络)
- ArcSDE数据被锁定的解决方法
- Hive 中一些特殊的HSQL
- 基于Linux+kermit+cutecom下载u-boot到芯片里面去
- ExtJs 关于滚动条的处理