zoukankan      html  css  js  c++  java
  • Python: Queue class

     1 class Queue():
     2     def __init__(self, size):
     3         self.queue = []
     4         self.size = size
     5         self.head = 0
     6         self.tail = 0
     7 
     8     def isEmpty(self):
     9         if self.head == self.tail:
    10             return True
    11         else:
    12             return False
    13 
    14     def isFull(self):
    15         if self.tail - self.head == self.size:
    16             return True
    17         else:
    18             return False
    19 
    20     def inQueue(self, content):
    21         if self.isFull():
    22             print "Queue is full"
    23         else:
    24             self.queue.append(content)
    25             self.tail += 1
    26 
    27     def outQueue(self):
    28         if self.isEmpty():
    29             print "Queue is empty"
    30         else:
    31             self.queue.remove(self.queue[0])
    32             self.tail -= 1
    33 
    34 def printQueueInfo(aQueue):
    35     print "isEmpty:	{0}".format(aQueue.isEmpty())
    36     print "isFull:		{0}".format(aQueue.isFull())
    37     print "head:		{0}".format(aQueue.head)
    38     print "tail:		{0}".format(aQueue.tail)
    39     print "queue:		{0}".format(aQueue.queue)
    40 
    41 print "1. Initialise a stack with a size of 2, i.e. store at most 2 elements"
    42 q = Queue(2)
    43 printQueueInfo(q)
    44 
    45 print "
    2. Add 'a'"
    46 q.inQueue('a')
    47 printQueueInfo(q)
    48 
    49 print "
    3. Add 'b'"
    50 q.inQueue('b')
    51 printQueueInfo(q)
    52 
    53 print "
    4. Remove 'a'"
    54 q.outQueue()
    55 printQueueInfo(q)
    56 
    57 print "
    5. Add 'c'"
    58 q.inQueue('c')
    59 printQueueInfo(q)
  • 相关阅读:
    java的异常抛出和String类常用方法
    监控工具zabbix
    监控工具nagios
    监控工具cacti
    LB集群
    高可用集群(HA)配置
    vsftp虚拟用户登录配置详解
    Ubuntu中设置静态IP和DNS(转载)
    虚拟机克隆linux系统后需要做的网络设置
    CentOS 6.8编译安装httpd2.2.31+MySQL5.6.31+PHP5.3.27
  • 原文地址:https://www.cnblogs.com/skyssky/p/4632059.html
Copyright © 2011-2022 走看看