# 实现一个顺序循环队列
class LOOP_Queue():
def __init__(self,Maxsize=6): # M是分配空间的大小
self.queue = [None]*6
self.Maxsize = Maxsize
self.front = 0
self.rear = 0
def enqueque(self,data):#入队
if (self.rear + 1)% self.Maxsize == self.front:
print("队满")
else:
self.queue[self.rear] = data
self.rear = (self.rear + 1) % self.Maxsize
def dequeque(self): # 实现出队
# 判断队列是否为空
if self.front == self.rear:
print("队空")
else:
data = self.queue[self.front]
self.queue[self.front] = None
self.front = (self.front + 1) % self.Maxsize
return data
def printdata(self):# 打印队列中的元素
p = self.front
while p != self.rear:
print(self.queue[p])
p = (p+1) % self.Maxsize
def quequelength(self):
n = (self.rear-self.front+self.Maxsize)%self.Maxsize
return n
if __name__ == '__main__':
que = LOOP_Queue()
n = int(input("请输入元素的个数"))
for i in range(n):
data = int(input("请输入入队元素"))
que.enqueque(data)
while que.quequelength() >0:
data = que.dequeque()
print(data)
循环列表
最新推荐文章于 2024-02-19 20:36:34 发布