「Queue」(佇列)是一種特殊類型的集合,它遵循「先進先出」(FIFO)的原則,意味著最先進入佇列的元素將最先被取出。在編程中,佇列提供了幾種基本操作,這些操作通常具有常數時間複雜度O(1)。以下是詳細介紹:
push(x):向佇列添加(或「入隊」)一個元素x。
front() 和 back():分別返回佇列中的第一個元素(隊首元素)和最後一個元素(隊尾元素),但不刪除它們。
pop():移除並返回佇列中的第一個元素(隊首元素),如果佇列為空則可能引發異常。
empty():檢查佇列是否為空,返回true如果為空,否則返回false。
size():返回佇列中元素的數量。
此外,還有一些其他方法,如:
add(x) 和 offer(x):向佇列添加一個元素x。如果佇列已滿,add(x)可能引發異常,而offer(x)則返回false。
remove() 和 poll():從佇列中取出並返回隊首元素。如果佇列為空,remove()可能引發異常,而poll()則返回null。
element() 和 peek():返回隊首元素但不刪除它。如果佇列為空,element()可能引發異常,而peek()則返回null。
這些操作是佇列的基本功能,廣泛套用於同步、任務調度等領域。