python
幡然醒悟的研二狗-致敬所有受压迫的博士
天道有轮回,我爱撸代码,拒绝读博士。
从代码中理解数学原理~~~~
展开
-
python itertools groupby
用法1先排序才是对key分组,不然不是分组参考原创 2019-10-15 21:28:25 · 1147 阅读 · 0 评论 -
深拷贝、浅拷贝
核心:在浅拷贝中 当改变拷贝对象的值 被拷贝对象的值也会随之改变当不想改变被拷贝的值时 应该使用深拷贝In [21]: a = [1] * 10 In [22]: a[1] = 5 ...原创 2019-08-13 16:45:58 · 1067 阅读 · 0 评论 -
秒懂 Python collections.defaultdict()与dict的使用和区别
写在前面本文内容和参考链接1里面的一样,加入了自己的理解。核心就是defaultdict这个可以直接初始化键值对中的值,可以什么都不加,默认为None;也可以int初始化,默认值是0;也可以list、set, dict初始化,默认为空的list和set以及dict。可以应用到Trie(prefix tree)中参考链接https://nfwcap.github.io/2019/03/05...原创 2019-08-10 14:32:33 · 1287 阅读 · 0 评论 -
leetcode347 topk出现频率元素
采用堆 O(Nlogk), 满足要求若采用bfprt然后在排序k个字典 就是max(O(N), O(klogk)) 就会快一点import heapqclass Solution: def topKFrequent(self, nums: List[int], k: int) -> List[int]: count = {} for i in...原创 2019-08-20 11:09:39 · 1092 阅读 · 0 评论 -
python OrderedDict 的用法 与 普通dict的区别
它是按照键的插入顺序排序的,更改键对应的值不能改变它的顺序。它与普通的dict的其中一个区别是 dict.popitem() 会移除最后一个键值对,并返回键值对,不能移除第一个键值对;而OrderedDict的popItem()方法可以移除第一个键值对,并返回该键值对。 用法:排序字典.popitem(last=False)。 然而它默认是删除最后一个键值对并返回用法就是可以基于此实现LRU(...原创 2019-08-12 12:18:07 · 2865 阅读 · 0 评论 -
python set
建立时可以用数组转换In [28]: set([1,2,3])Out[28]: {1, 2, 3}add时想添加一个列表,必须用元组In [15]: res.add(1)In [16]: resOut[16]: {1}In [17]: res.add((1, 2, 3))In [18]: resOut[18]: {(1, 2, 3), 1}...原创 2019-09-17 22:58:48 · 1090 阅读 · 0 评论 -
python 进制
int函数将k进制转换成10进制int(str, k) -> 10进制int(“64”), int(“100”, 8), int(“40”, 16), int(“1000000”, 2)(64, 64, 64, 64)将10进制转化成k进制补充(将ascii数字转换成相应str):In [150]: chr(65)Out[150]: ‘A’将字符转成相应ascii码:ord(‘...原创 2019-09-21 16:16:05 · 1236 阅读 · 0 评论