python数据结构之队列的实现
队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。
class Queue(object):
def __init__(self):
self.__item = []
def is_empty(self):
"""判断队列是否为空"""
return self.__item == []
def in_queue(self, item):
"""进队"""
self.__item.append(item)
def out_queue(self):
"""出队"""
return self.__item.pop(0)
def size(self):
"""返回大小"""
return self.__item.__len__()
if __name__ == '__main__':
q = Queue()
print(q.is_empty())
q.in_queue(1)
q.in_queue(2)
q.in_queue(3)
q.in_queue(4)
print(q.is_empty())
print(q.size())
print(q.out_queue())
print(q.out_queue())
print(q.size())