数据结构与算法06——队列之循环队列
1个回答
展开全部
与栈不同,他就是现实中排队一样,讲究先来后到,即 先进先出 。
打个比方,你告诉朋友我们做地铁去西湖,你输入 " s-u-b ", 如果按照栈 先入后出后入先出 的方式,朋友会收到 b-u-s , what?有地铁,我们干嘛做两个小时的汽车??? 队列就可以让朋友按你输入的顺序依次收到 s-u-b 。
简单的看一下队列,是线性结构,想到什么?非常熟悉的 线性表 ,有两种存储结构, 顺序存储和链式存储 。
我们今天先讲一讲队列的顺序存储结构—— 循环队列
但是,,,如果如下图,出队到只剩最后一个元素,front和rear又都指向了一个同元素,而且仅在队尾,又要认为队列为空?不可能啊,明明最后一块存储单元还有一个元素,而且却不能继续入队新元素,超出了存储范围,如果要继续利用前面出队的空余空间,又该怎么用?
如果 我们把队列设计成下面这样:
哈哈,循环了。队尾rear指向下一个位置,而不是当前的队尾元素。
这就是循环队列的工作流程
将上面的过程做一下整理:
指定队列最大存储5个单元,方便观看
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询