Python - Sıra

Bir servisi beklerken günlük hayatımızda sıraya aşinayız. Kuyruk veri yapısı, veri öğelerinin bir kuyrukta düzenlendiği yerde de aynı anlama gelir. Sıranın benzersizliği, öğelerin eklenme ve kaldırılma biçiminde yatmaktadır. Öğelere uçta izin verilir, ancak diğer uçtan kaldırılır. Dolayısıyla, İlk Giren İlk Çıkar yöntemidir. Bir kuyruk, öğeleri eklemek ve kaldırmak için insert () ve pop () yöntemlerini kullanabileceğimiz python listesi kullanılarak uygulanabilir. Veri öğeleri her zaman kuyruğun sonuna eklendiğinden, bunların eklenmesine gerek yoktur.

Bir Kuyruğa Eleman Ekleme

Aşağıdaki örnekte First-in-First-Out yöntemini uyguladığımız bir queue sınıfı oluşturuyoruz. Veri öğeleri eklemek için yerleşik ekleme yöntemini kullanıyoruz.

class Queue:

  def __init__(self):
      self.queue = list()

  def addtoq(self,dataval):
# Insert method to add element
      if dataval not in self.queue:
          self.queue.insert(0,dataval)
          return True
      return False

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

TheQueue = Queue()
TheQueue.addtoq("Mon")
TheQueue.addtoq("Tue")
TheQueue.addtoq("Wed")
print(TheQueue.size())

Yukarıdaki kod çalıştırıldığında, aşağıdaki sonucu verir -

3

Bir Sıradan Eleman Çıkarma

Aşağıdaki örnekte, verileri eklediğimiz ve ardından dahili pop yöntemini kullanarak verileri kaldırdığımız bir kuyruk sınıfı oluşturuyoruz.

.
class Queue:

  def __init__(self):
      self.queue = list()

  def addtoq(self,dataval):
# Insert method to add element
      if dataval not in self.queue:
          self.queue.insert(0,dataval)
          return True
      return False
# Pop method to remove element
  def removefromq(self):
      if len(self.queue)>0:
          return self.queue.pop()
      return ("No elements in Queue!")

TheQueue = Queue()
TheQueue.addtoq("Mon")
TheQueue.addtoq("Tue")
TheQueue.addtoq("Wed")
print(TheQueue.removefromq())
print(TheQueue.removefromq())

Yukarıdaki kod çalıştırıldığında, aşağıdaki sonucu verir -

Mon
Tue