当前位置: 首页 > 文档资料 > Python 数据结构 >

Queue

优质
小牛编辑
125浏览
2023-12-01

在等待服务的过程中,我们熟悉日常生活中的排队。 队列数据结构也意味着数据元素排列在队列中的相同。 队列的唯一性在于添加和删除项目的方式。 这些项目允许在最后但从另一端删除。 所以这是一种先入先出的方法。 可以使用python list实现队列,我们​​可以使用insert()和pop()方法添加和删除元素。 它们没有插入,因为数据元素总是在队列末尾添加。

将元素添加到队列

在下面的示例中,我们创建了一个队列类,我们实现了First-in-First-Out方法。 我们使用内置插入方法来添加数据元素。

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