首页 新闻 会员 周边 捐助

循环队列(顺序)元素进出与首尾指针增加的顺序问题

0
悬赏园豆:5 [已解决问题] 解决于 2013-10-22 18:32

在顺序的循环队列中,出队时,Front指针要加1后对最大队长Size取余与元素离开队列的先后顺序是怎样的?入队时,Rear指针加1后对最大对长Size取余与元素进入队列的顺序又是怎样的?

因为本人在两本书上看到了两种不同的顺序,就Front来说:

代码(1)如下:

Queue->front=(Queue->front+1)%SIZE;

Queue->Elem[Queue->fornt]=element;

代码(2)如下:

Queue->Elem[Queue->front]=element;

Queue->front=(Queue->front+1)%SIZE;

个人认为代码(2)是对的,但理不清思路,求高手帮忙说明清楚。

singular_k的主页 singular_k | 初学一级 | 园豆:180
提问于:2013-10-20 15:13
< >
分享
最佳答案
0

这两种顺序都可以是对的,不过Queue->front的含义在这两种代码中不太一样。

在代码(1)中,Queue->front表示的是当前最后一个已经出队的元素

在代码(2)中,Queue->front表示的是当前正要出队却还没有出队的元素

收获园豆:5
诶碧司 | 小虾三级 |园豆:1912 | 2013-10-20 22:35

我想了一下,确实是这样子的,谢谢了。

singular_k | 园豆:180 (初学一级) | 2013-10-22 18:31
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册