python中三种特殊数据结构:set集合、堆、双端队列
2016-11-08 16:29
323 查看
(1)set集合:是一个无序不重复元素集
(2)堆:heapq(在列表上操作,而且默认为小根堆,能够能快的弹出最小值)
如heappush(heap,x) #将x入堆
(3)双端队列:在需要按照元素增加的顺序来移除元素时有用(deque)
#双端队列
1.>>> x & y # 交集 2.set(['a', 'm']) 3. 4.>>> x | y # 并集 5.set(['a', 'p', 's', 'h', 'm']) 6. 7.>>> x - y # 差集 8.set(['p', 's']) t和s都为set集合 1.t.add('x') # 添加一项 2.s.update([10,37,42]) # 在s中添加多项
(2)堆:heapq(在列表上操作,而且默认为小根堆,能够能快的弹出最小值)
如heappush(heap,x) #将x入堆
#导入堆模块 import heapq heap=[] for n in range(10): heapq.heappush(heap,n) print heapq.nlargest(3, heap) #返回topN大的数
(3)双端队列:在需要按照元素增加的顺序来移除元素时有用(deque)
#双端队列
from collections import deque q=deque(range(5)) q.append(5) q.appendleft(6) print q >>deque([6, 0, 1, 2, 3, 4, 5])
相关文章推荐
- Python数据结构(三)集合set
- python入门系列13―——集合、双端队列、堆
- Python3数据结构【列表list,元组tuple,集合set】
- Python 内置数据结构 —— queue(队列)、deque(双端队列)
- python基础教程_学习笔记19:标准库:一些最爱——集合、堆和双端队列
- python 下的数据结构与算法---4:线形数据结构,栈,队列,双端队列,列表
- Python笔记(10)----集合、堆、双端队列
- Python内置数据结构——集合set ,集合运算
- 003——Python内建数据结构列表(list)、元组(tuple)、字典(dict)、集合(set)
- Python实现的数据结构与算法之双端队列详解
- python set(集合)数据结构
- python set集合(数据结构)
- Python集合(set)类型的操作
- 基础篇11-python基本数据结构-元组和集合
- Python集合(set)类型的操作
- 用Python实现的数据结构与算法:队列
- Python学习笔记--集合set
- Python中的集合:set与frozenset用法举例
- Python中的集合(set)和字典(dict)
- python中set集合如何决定是否重复?