佇列簡介

佇列是 FIFO(先進先出)資料結構,即新增到佇列的第一個元素將是第一個刪除的元素(先出)。

讓我們考慮一下等待幫助的客戶的例子。愛麗絲,鮑勃和丹都在超市。愛麗絲準備付錢,所以她接近收銀員。愛麗絲現在在佇列中。她是佇列中唯一的人,所以她既在前面也在後面。

現在,佇列看起來像這樣:

              |-------|
              | Alice | cashier
              |-------|
                ▲   ▲
back of queue ──┘   └── front of queue

現在 Bob 和 Dan 接近收銀員。它們被新增到佇列中。愛麗絲還在前面,丹在後面:

              |-------||-------||-------|
              |  Dan  ||  Bob  || Alice | cashier
              |-------||-------||-------|
                ▲                     ▲
back of queue ──┘                     └── front of queue

將人員新增到佇列是排隊操作。愛麗絲,鮑勃和丹已經入伍了。當收銀員幫助每個客戶時,他們將從佇列中刪除。這是出列操作。表示佇列中資料元素的客戶從佇列的前面出隊。這意味著第一個接近收銀員的客戶是第一個得到幫助的客戶(FIFO)。