1.学习数据结构第一阶段:
掌握 基本用法,解决基本的问题
2.学习的第二阶段:
不同的场景,知道采取何种 合适的方法 去解决问题
3.学习的第三阶段:
灵活学用,不断的锻炼自己
5.deque 双端队列,基于list 优化了list两端的增删改查
使用deque双端队列非常适合频繁在列表两端操作的场景
from collection import deque
d = deque([1, 2, 3, 4])
t = d.popleft()
print(t)
6.Counter
Counter一种继承于dict用于统计元素个数的数据结构
适合于统计 某个集合里面 某项 出现多少的 场景。
统计元素出现频次的场景
Counter实现基于dict,它将元素存储于keys上,出现次数为value
from collections import Counter
c = Counter([1,2,3,4,5,2,1])
print(c)
7.OrderedDict
基本的dict无法保证顺序,keys映射为哈希值,而此值不是按照顺序存储在散列表中的。所以遇到要确保字典keys有序场景,就要使用OrderedDict.让字典中的键值对 变为有序列
from collections import OrderedDict
od = OrderedDict({"c":3, "a":1, "b":2})
for k,v in od.items():
print(k,v)