Python佇列


當等待一項服務時,對日常生活中的排隊很熟悉。 佇列資料結構同樣意味著資料元素排列在一個佇列中。 佇列的唯一性在於專案新增和刪除的方式。 這些物件可以放在最後,但從另一端移除。 所以這是先進先出的方法。 可以使用python list實現佇列,可以使用insert()pop()方法新增和移除元素。它們沒有插入,因為資料元素總是新增在佇列的末尾。

將元素新增到佇列

在下面的例子中,我們建立了一個佇列類,實現了先進先出方法。 使用內建的insert()方法來新增資料元素。

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())

執行上面範例程式碼,得到以下結果 -

3

從佇列中移除元素

在下面的例子中,我們建立了一個插入資料的佇列類,然後使用內建的pop方法刪除資料。參考以下程式碼實現 -

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())

當上面的程式碼被執行時,它會產生以下結果 -

Mon
Tue