堆疊與佇列
佇列的基礎
排隊的隊伍是在尾端(Rear)加入隊伍,如同佇列在尾端存入資料,當前端(Front)寄完信、存完錢或買完票後,人就離開隊伍,如同佇列從前端取出資料,所以佇列的基本操作,如下所示:–dequeue():從佇列取出資料,每執行一次,就從前端取出一個資料。–enqueue():在尾端將資料存入佇列。–isQueueEmpty():檢查佇列是否是空的,以便判斷是否還有資料可以取出。–isQueueFull():檢查佇列是否是滿了,以便判斷是否還可以存入資料。
佇列的基礎-特性
述取出的順序是1、2、3、4、5,和存入時完全相同,稱為「先進先出」(First In, First Out)特性
佇列的應用
以計算機科學來說,佇列的主要用途是作為資料緩衝區,例如:因為電腦周邊設備的處理速度遠不如CPU,所以印表機列印報表時,需要使用佇列作為資料暫存的緩衝區
Buffer:寫入磁碟的資料先儲存在電腦的記憶體緩衝區中,待緩衝區的資料到達一定的數量後,再寫入磁碟中,因為電腦的記憶體的速度比磁碟機快,如此連續寫入資料比分段寫入資料更能節省時間。
Communication:數據機再傳輸時就是採取佇列的方式,先到的資料先傳送,來不及傳送的資料就先暫存在 Queue 中,等到線路空出來時再繼續傳送.
Printer Queue:印表機連續列印不同資料時,先到的先列印, 未列印的資料依序排在 Queue 中等待列印.