python双向队列deque

文章详细介绍了Python内置的collections模块中的deque数据结构,它是一个双端队列,支持在两端高效地添加和删除元素。主要方法包括append(),appendleft(),clear(),copy(),count(),extend(),extendleft(),index(),insert(),pop(),popleft(),remove(),reverse(),rotate()等。此外,deque还具有maxlen属性以限制其最大长度。文章通过实例演示了这些方法的使用。

文章目录

一. 双向队列deque

双端队列,可以快速的从另外一侧追加和推出对象,deque是一个双向链表,针对list连续的数据结构插入和删除进行优化

它提供了两端都可以操作的序列,这表示在序列的前后你都可以执行添加或删除操作。双向队列(deque)对象支持以下方法

1. append():添加元素x到队列右端
###定义deque(字符串形式)
d = deque('ghi')  
##或者列表形式定义deque:
# d = deque(['g', 'h', 'i'])
d.append('j') 
d
deque(['g', 'h', 'i', 'j'])
2. appendleft():添加元素x到队列左端
d.appendleft('f')
d
deque(['f', 'g', 'h', 'i', 'j'])
3. clear():移除所有元素,使其长度为0
d = deque('ghi')
d.clear()
d
deque([])
4. copy():创建一份浅拷贝
d = deque('xiaoweuge')
y = d.copy()
print(y)
deque(['x', 'i', 'a', 'o', 'w', 'e', 'u', 'g', 'e'])
5. count():计算 deque 中元素等于 x 的个数
d = deque('xiaoweuge-shuai')
d.count('a')
2
6. extend():扩展deque的右侧,通过添加iterable参数中的元素
a = deque('abc')
b = deque('cd')
a.extend(b)
a
deque(['a', 'b', 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值