基本用法
创建双向队列
使用 deque(maxlen=N) 构造函数会新建一个固定大小的队列。当新的元素加入并且这个队列已满的时候, 最老的元素会自动被移除掉。
更一般的, deque 类可以被用在任何你只需要一个简单队列数据结构的场合。 如果你不设置最大队列大小,那么就会得到一个无限大小队列,你可以在队列的两端执行添加和弹出元素的操作。
在队列两端插入或删除元素时间复杂度都是 O(1) ,区别于列表,在列表的开头插入或删除元素的时间复杂度为 O(N) 。
1 | import collections |
append(往右边添加一个元素)
1 | import collections |
appendleft(往左边添加一个元素)
1 | import collections |
clear(清空队列)
1 | import collections |
copy(浅拷贝)
1 | import collections |
count(返回指定元素的出现次数)
1 | import collections |
extend(从队列右边扩展一个列表的元素)
1 | import collections |
extendleft(从队列左边扩展一个列表的元素)
1 | import collections |
index(查找某个元素的索引位置)
1 | import collections |
insert(在指定位置插入元素)
1 | import collections |
pop(获取最右边一个元素,并在队列中删除)
1 | import collections |
popleft(获取最左边一个元素,并在队列中删除)
1 | import collections |
remove(删除指定元素)
1 | import collections |
reverse(队列反转)
1 | import collections |
rotate(把右边元素放到左边)
1 | import collections |