İlk giren ilk çıkar prensibiyle çalışan, elemanları geliş sırasına göre işleyen veri yapısıdır.
DSA kaynağı queue yapısını FIFO stratejisiyle açıklar: ilk eklenen eleman ilk servis edilir. Temel işlemler enqueue, dequeue ve peek/front olarak verilir.
Standart queue, singly linked list ile verimli uygulanabilir. Tail üzerinden enqueue, head üzerinden dequeue yapılır; böylece uç işlemler sabit zamanda kalır. Arama ise linked list gibi O(n) sürer.
Aşağıdaki uygulamalar PDF kaynaklarındaki pseudo kod akışını modern veri yapılarıyla ifade eder. Kenar durumları görünür bırakıldığı için örnekler doğrudan test edilebilir.
1class Queue { 2 private items: T[] = [];3 enqueue(value: T) { this.items.push(value); }4 dequeue(): T | undefined { return this.items.shift(); }5 peek(): T | undefined { return this.items[0]; }6}Komutları virgülle ayırın. Örnek: enqueue:10, enqueue:12, dequeue, peek, enqueue:9
Komutları virgülle ayırın. Örnek: enqueue:10, enqueue:12, dequeue, peek, enqueue:9
En İyi Durum: O(1)
Ortalama Durum: O(1)
En Kötü Durum: O(1)
O(n) - Çalışma süresi, giriş boyutu ile doğrusal olarak artar.
Queue Algoritması ile benzer veya alternatif olarak değerlendirilebilecek diğer başlıklar: