要求:
实现一个队列的数据结构,具有:入队、出队、查看队尾首元素、查看队列大小等功能。
方法一:数组实现
# -*- coding:utf-8 -*-
'''
数组实现队列
'''
class MyQueue():
def __init__(self):
self.arr = []
self.front = 0 #队列头
self.rear = 0 #队列尾
#判断队列是否为空
def isEmpty(self):
return self.front == self.rear
#返回队列大小
def size(self):
return self.rear - self.front
#返回队列首元素--front记录队列首元素的位置
def getFront(self):
if self.isEmpty():
return None
return self.arr[self.front]
#返回队列尾元素--rear记录队列尾元素往后一个位置
def getBack(self):
if self.isEmpty():
return None
return self.arr[self.rear-1]
#删除队列头元素
def deQueue(self):
if self.rear > self.front:
self.front += 1 #出队只需执行front+ 即可
else:
print("队列已经为空!")
#把新元素加入队尾
def enQueue(self,item):
self.arr.append(item)
self.rear += 1
i