📜  Python队列

📅  最后修改于: 2020-11-07 08:36:47             🧑  作者: Mango


我们在等待服务时对日常生活中的排队很熟悉。队列数据结构aslo表示在队列中排列数据元素的情况。队列的唯一性在于添加和删除项目的方式。这些项目允许在一端,但从另一端删除。因此,这是一种先进先出的方法。可以使用Python列表实现队列,我们可以使用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