循环队列中判断队满队空(数组实现的循环队列)
来源:互联网 发布:无限挑战推荐知乎 编辑:程序博客网 时间:2024/06/05 20:24
转载自:http://blog.csdn.net/u010429311/article/details/51043149
在引用循环队列前,我们需要了解队列是如何线性实现的。
(纠错:上图中出队列应该是:x=sq[front++])简单地讲,便是当队列为空时,front = rear = 0,每当插入元素尾指针+1,删除元素是头指针-1。但是,我们会发现一个问题,如上面的第四个图,0,1,2三个空间并没有使用。因此,为了占用该空间,我们使用了循环队列来实现。
循环队列原理图:
我们可以发现,当循环队列属于上图的d1情况时,是无法判断当前状态是队空还是队满。为了达到判断队列状态的目的,可以通过牺牲一个存储空间来实现。
如上图d2所示,
队头指针在队尾指针的下一位置时,队满。 Q.front == (Q.rear + 1) % MAXSIZE 因为队头指针可能又重新从0位置开始,而此时队尾指针是MAXSIZE - 1,所以需要求余。
当队头和队尾指针在同一位置时,队空。 Q.front == Q.rear;
以下是实现的代码:
阅读全文
0 0
- 循环队列中判断队满队空(数组实现的循环队列)
- 队列的数组实现(循环队列)
- 循环队列的数组实现
- 循环队列的数组实现!!
- 循环数组队列的实现
- 队列----循环数组实现队列
- 数组实现循环队列
- 数组实现循环队列
- 循环数组实现队列
- 循环队列--数组实现
- 数组实现循环队列
- 数组实现循环队列
- 数组实现循环队列
- 队列的理解(利用数组实现循环队列)
- 队列----循环队列的实现
- javascript中利用数组实现的循环队列
- 队列--数组循环队列
- 利用循环数组实现的队列
- python带有访问计数的列表
- 文章标题
- 接口自动化之封装httpclientUtil类
- navicat连接sqlserver数据库
- IDEA的笔记(L3)
- 循环队列中判断队满队空(数组实现的循环队列)
- 后台图片没有加载到前台页面
- IE11 js导出excel提示Automation 服务器不能创建对象
- tomcat部署项目去除项目名和端口号
- 使linux系统中ulimit -c unlimited永久生效
- Android开发 之 指纹识别
- 2017 FIRA SIMUROSOT仿真环境(ROS+Gazebo)
- 模板
- poj2010 Moo University