Sobes.tech
Junior

Programlama bağlamında kuyruk nedir?

sobes.tech yapay zeka

AI'dan gelen yanıt

Kuyruk (Queue), FIFO (First-In, First-Out) ilkesini uygulayan soyut bir veri türüdür; ilk eklenen öğe ilk çıkar.

Ana işlemler:

  • Enqueue: Bir öğeyi kuyruğun sonuna ekleme.
  • Dequeue: Bir öğeyi kuyruğun başından çıkarma.
  • Peek/Front: Kuyruğun başındaki öğenin değerini, onu çıkarmadan alma.
  • IsEmpty: Kuyruğun boş olup olmadığını kontrol etme.
  • Size: Kuyruktaki mevcut öğe sayısını alma.

Kullanım örnekleri:

  • İşletim sistemlerindeki görev yönetimi.
  • Web sunucularında isteklerin işlenmesi.
  • Grafik dolaşım algoritmaları (BFS - Breadth-First Search).
  • Veri işleme için tamponlar.

Uygulama, diziler veya bağlı listeler temel alınarak yapılabilir.

# Python’da liste kullanarak kuyruk örneği
class Queue:
    def __init__(self):
        self.items = []

    def is_empty(self):
        return self.items == []

    def enqueue(self, item):
        self.items.append(item) # Sonuna ekle

    def dequeue(self):
        if not self.is_empty():
            return self.items.pop(0) # Baştan çıkar
        return None

    def peek(self):
        if not self.is_empty():
            return self.items[0]
        return None

    def size(self):
        return len(self.items)