打印

队列概念,理解及应用

[复制链接]
193|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
第三章|  楼主 | 2018-10-4 18:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
队列的运用:通过队列的插入和删除等基本操作,使读者对队列的结构和其如何实现有个清晰的概念。



队列的基本操作函数:置空队列函数SetNull(),判断队列是否为空函数Empty(),入排操作函数EnQueue(), 出排操作函数DelQueue(),在主程序中程序对其进行简单的调用,并显示调用效果,给读者一个更加直观的概念。



队列是一种信息的线性列表,以先进先出的顺序访问。首先进队列的信息最先出队,第二进队的信息随后出队,依次类推。这是队列中存取的唯一方法,不许对其随机访问。



队列可利用数组向量q[Max]存储,队列所容许的最大容量是Max,为了指示排头和排尾,需要引入两个指针:front一用于指向实际排头元素前一个位置;rear一用于指向实际排尾元素所在位置。由于front和rear是位置对应向量的下标,所以在进行具体的程序设计时,这两个变量应定义整型变量,而不是指针变量。由front和rear的定义易得,当这两个指针相等时,队列为空。如果有n个数据入排,则尾指针rear的值自加n,如果有m个数据出排,那么让头指针front的值自加m。如果front或者rear的值达到队列的最大容量Max,若rear为Max,如果此时有一个数据再次入排,则让rear翻转为0.在向量结构上采用这种方法存储的队列成为循环队列,



总结:入排时,当rear加1后rear = front,则为满排,也就是队列已经装满,而在出排时,让front加1后,如果front = rear,则表示队列已经排空。

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

380

主题

380

帖子

0

粉丝