队列是一个基本的数据结构,类似排队那样先进先出,加入队列的大小是有限制的,最后一个元素进队时需要将第一个元素进行出队操作,并且队列还得有序
1. 迭代
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
MAX = 5
queue = [None,None,None]
def Queue(data):
for i in range(MAX):
if i == MAX - 1:
queue[i] = data
break
queue[i] = queue[i+1]
print(queue)
KEY = 8
while(KEY):
Queue(input())
KEY -= 1
运行结果:
Geek-Mac:Downloads zhangyi$ python3 Nice.py
1
[None,'1']
2
[None,'1','2']
3
[None,'2','3']
4
[None,'3','4']
5
['1','4','5']
6
['2','5','6']
7
['3','6','7']
8
['4','7','8']
2. 使用标准库中的 collections.deque 实现双端循环队列
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
from collections import deque
queue = deque([],5)
for i in range(8):
queue.append(input())
print(queue)
运行结果:
Geek-Mac:Downloads zhangyi$ python3 Nice.py
1
deque(['1'],maxlen=5)
2
deque(['1','2'],maxlen=5)
3
deque(['1','3'],maxlen=5)
4
deque(['1','4'],maxlen=5)
5
deque(['1','5'],maxlen=5)
6
deque(['2','6'],maxlen=5)
7
deque(['3','7'],maxlen=5)
8
deque(['4','8'],maxlen=5)
(编辑:北几岛)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|