作者chenbojyh (阿志)
看板Grad-ProbAsk
标题Re: [理工] [资结]-circular queue
时间Sat Sep 19 13:06:34 2009
※ 引述《chenbojyh (阿志)》之铭言:
: ※ 引述《chenbojyh (阿志)》之铭言:
: : 如果我没记错的话 (我现在身边找不到书)
: : 一楼大大的是正确的
: : rear指的是Queue最後一个加入之元素的下一个位址
: : (也就是空的位置)
: : 以你上面的例子
: : if front =1 rear=3
: : 在这个Circular Queue只有array[1] array[2]两个位置有存元素
: : 所以理当是解答对
: : 假如我上课内容没记错的话是这样......
: 呵呵
: 我记错了 (sorry > <)
: 如果依课本给的演算法
: ADDQ(Q,item)
: begin
: Rear=(Rear + 1) % n;
: if Rear = = Front then "Q满";
: else
: Q[Rear] = item;
: end
: Rear = 最後放入的元素位址
: Front的下一个位址 = 最前端放入的元素
: 不过
: 依你给的题目
: 我觉得应该是你对吧
: The variable front is used to point to one position from the first element
: in the circular queue.
: Another variable rear is used to point to the last element in the circular
: queue.
: 题目的叙述的定义跟书本原本不一样
我想到一个问题
如果依题目这样讲
如果当front = rear时
这个代表的是Queue空
还是Queue种有一个元素........?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.227.131.125
1F:推 abien:用n-1格存data时是Queue空,用n格存data则再判断tag 09/19 17:32