队列(queue)是较为容易理解的概念,就像买票排队一样,先进先出,新来的人排到队尾,最早到的人最先出列。代码如下:
#coding=utf-8 class Queue(object): def __init__(self,size): self.size = size self.queue = [] def get_size(self): return len(self.queue) def enqueue(self,item): if self.isfull(): return -1 self.queue.append(item) def dequeue(self): if self.isempty(): return -1 firstElement = self.queue[0] self.queue.remove(firstElement) return firstElement def isfull(self): if len(self.queue) == self.size: return True return False def isempty(self): if len(self.queue) == 0: return True return False if __name__ == '__main__': queueTest = Queue(10) for i in range(11): queueTest.enqueue(i) print(queueTest.isfull()) print(queueTest) print(queueTest.get_size()) for i in range(5): print(queueTest.dequeue()) print(queueTest.isempty()) print(queueTest.get_size()) print(queueTest)
运行结果如下:
True
<__main__.Queue object at 0x00000000029487F0>
10
0
1
2
3
4
False
5
<__main__.Queue object at 0x00000000029487F0>