推 abien:用n-1格存data時是Queue空,用n格存data則再判斷tag 09/19 17:32
※ 引述《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