[問題] queue

看板C_and_CPP作者 (Michael)時間13年前 (2011/10/17 10:25), 編輯推噓3(3017)
留言20則, 8人參與, 最新討論串1/1
小弟目前再做一個題目 是產生一序列程序封包 將封包依時間先後順序進入系統中 並產生此封包結束時間 當系統正在處理某一封包時 此時進入系統的其他封包將被暫存在緩衝區裡 分析最後所有封包在queue裡等待時間 封包在系統中平均駐留時間 小弟目前卡在queue 很久了 希望有強者可以解惑 有興趣者請站內信 小弟會附上題目還有我的問題 解決問題後 小弟會附上1000P作為答謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 163.22.18.73

10/17 18:26, , 1F
queue FIFO-> first in first out
10/17 18:26, 1F

10/17 18:28, , 2F
忘了說 小弟想用陣列和指標寫 不用linked list
10/17 18:28, 2F

10/17 18:34, , 3F
你如果不用link list就意味著你至少知道資料量的上限是吧
10/17 18:34, 3F

10/17 18:35, , 4F
小弟目前卡在queue很久了←建議你具體說出你卡在什麼
10/17 18:35, 4F

10/17 18:39, , 5F
或者是你不必擔心會跑太慢的話....否則是不建議用array..
10/17 18:39, 5F

10/17 18:42, , 6F
用array的話,我會想像做成環狀的樣子,兩個index存頭尾
10/17 18:42, 6F

10/17 18:43, , 7F
一開始都是0,擺資料就是頭遞增,取資料就是尾遞增
10/17 18:43, 7F

10/17 18:43, , 8F
如果跑到array結尾的話就再從0開始擺/開始取
10/17 18:43, 8F

10/17 18:44, , 9F
你還是需要知道這個queue有多大呀...
10/17 18:44, 9F

10/17 18:44, , 10F
確實,就算我的做法還是容易爆掉 XD
10/17 18:44, 10F

10/17 18:45, , 11F
這有什麼特殊的地方嗎?FIFO這種東西滿了就是要等啊
10/17 18:45, 11F

10/17 18:46, , 12F
這世界上怎麼可能會有無上限的FIFO
10/17 18:46, 12F

10/17 18:46, , 13F
我的寫法必須能夠確定element絕不會超過某個數量 XDD
10/17 18:46, 13F

10/17 18:47, , 14F
他想要用陣列和指標的話就是用circular queue沒錯啊
10/17 18:47, 14F

10/17 18:48, , 15F
就是Data Structure課本上面會教的第一個寫法
10/17 18:48, 15F

10/17 18:50, , 16F
不能fetch的時候處理就要先停下來啊,要有flow control
10/17 18:50, 16F

10/17 19:32, , 17F
想像你去郵局排隊。一個接一個...人太多郵局也會爆掉吧
10/17 19:32, 17F

10/17 20:40, , 18F
std::vector
10/17 20:40, 18F

10/17 20:41, , 19F
c++就直接有queue可以用啦~
10/17 20:41, 19F

10/17 21:24, , 20F
你是用C還C++? C++的STL就有queue可以用了呀
10/17 21:24, 20F
文章代碼(AID): #1Ed0AF8b (C_and_CPP)