博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
队列课下作业
阅读量:4956 次
发布时间:2019-06-12

本文共 2269 字,大约阅读时间需要 7 分钟。

要求:

  • 1 补充课上没有完成的作业
  • 2 参考15.3节,用自己完成的队列(链队,循环数组队列)实现模拟票务柜台排队功能
  • 3 用JDB或IDEA单步跟踪排队情况,画出队列变化图,包含自己的学号信息
  • 4 把代码推送到代码托管平台
  • 5 把完成过程写一篇博客:重点是单步跟踪过程和遇到的问题及解决过程
  • 6 提交博客链接

补充代码:

public class CircularArrayQueue
implements Queue
{ private final int DEFAULT_CAPACITY = 10000; private int front, rear, size; private T[] queue; //-----------------------------------------------------------------// Creates an empty queue using the default capacity.//----------------------------------------------------------------- public CircularArrayQueue() { front = rear = size = 0; queue = (T[]) (new Object[DEFAULT_CAPACITY]); } //-----------------------------------------------------------------// Adds the specified element to the rear of this queue, expanding// the capacity of the queue array if necessary.//----------------------------------------------------------------- public void enqueue (T element) { if (size == queue.length) expandCapacity(); queue[rear] = element; rear = (rear+1) % queue.length; size++; } public void expandCapacity() { T[] larger = (T[])(new Object[queue.length*2]); for (int index = 0; index < size; index++) larger[index] = queue[(front+index) % queue.length]; front = 0; rear = size; queue = larger; } @Override public T dequeue() { if (size == 0) throw new EmptyCollectionException("queue"); T d = queue[front]; queue[front] = null; front = (front+1)%queue.length; size--; return d; } @Override public T first() { return queue[front]; } @Override public boolean isEmpty() { boolean course = false; if(size ==0){ course = true; } return course; } @Override public int size() { return size; } @Override public String toString(){ String result = ""; int scan = 0; while(scan < size) { if(queue[scan]!=null) { result += queue[scan].toString()+"\n"; } scan++; } return result; }}

单步跟踪:

1062727-20171022155947287-1816665561.png

队列变化图:

1062727-20171022160638381-1380112780.png

转载于:https://www.cnblogs.com/1zhjch/p/7710415.html

你可能感兴趣的文章
iTextSharp带中文转换出来的PDF文档显示乱码
查看>>
阶乘因式分解(一)
查看>>
qt学习记录-----3.信号与槽的问题
查看>>
『ORACLE』 内置约束(11g)
查看>>
Vue--学习过程中遇到的坑
查看>>
组件:slot插槽
查看>>
.net压缩图片质量(附demo)
查看>>
equals和==的区别
查看>>
Android6.0指纹识别开发
查看>>
java反射机制剖析(二)— Class Loader
查看>>
走进C++程序世界------异常处理
查看>>
通过用户模型,对数据库进行增删改查操作。
查看>>
去除数组中重复的元素
查看>>
Nginx配置文件nginx.conf中文详解(转)
查看>>
POJ 1988 Cube Stacking
查看>>
POJ 1308 Is It A Tree?(并查集)
查看>>
N进制到M进制的转换问题
查看>>
Android------三种监听OnTouchListener、OnLongClickListener同时实现即其中返回值true或者false的含义...
查看>>
MATLAB实现多元线性回归预测
查看>>
Mac xcode 配置OpenGL
查看>>