看板 Grad-ProbAsk 關於我們 聯絡資訊
※ 引述《yesa315 (XD)》之銘言: : 問一個array q[0..n-1]來表示Circular queue : front指向第一個元素 rear指向最後一個元素 : 用front及rear來表示元素個數 : 題庫上的解答是 (rear-front) mod n : 但我覺得很怪 應該是 (rear-front+1) mod n : if front =1 rear=3 : 則元素個數應該是3-1+1=3 不應是3-1=2 : 是答案錯還是我錯呢.. : [95清大資工] : 謝謝 如果我沒記錯的話 (我現在身邊找不到書) 一樓大大的是正確的 rear指的是Queue最後一個加入之元素的下一個位址 (也就是空的位置) 以你上面的例子 if front =1 rear=3 在這個Circular Queue只有array[1] array[2]兩個位置有存元素 所以理當是解答對 假如我上課內容沒記錯的話是這樣...... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.227.128.5
yesa315:我題目有打喔 front指向第一個元素 rear指向最後一個元素 09/19 00:35
yesa315:題目附在我原po的文章中 09/19 00:44
yesa315:circular queue有兩種 一種使用到n-1格 一種使用了n格 09/19 00:52
yesa315:而n個的演算法 front指向的東西不是空的 09/19 00:52
yesa315:當n格都放滿的時候 09/19 00:57