- 博客(3)
- 资源 (3)
- 收藏
- 关注
原创 leetcode-380.常数时间插入、删除和获取随机元素
本题的难点在于两点: 1、插入,删除,获取随机元素这三个操作的时间复杂度必须都是 O(1)。 2、getRandom方法返回的元素必须等概率返回随机元素,也就是说,如果集合里面有n个元素,每个元素被返回的概率必须是1/n。 哈希表:Java 中为 HashMap,Python 中为 dictionary。 动态数组:Java 中为 ArrayList,Python 中为 list。 getRandom 的思想是选择一个随机索引,然后使用该索引返回一个元素。而哈希表中没有索引,因此要获得真正的随机值,则要将.
2020-10-07 14:27:46
192
原创 leetcode382.398蓄水池抽样算法
在 LeetCode 上做到两道非常有意思的题目,382 和 398 题,关于水塘抽样算法(Reservoir Sampling),本质上是一种随机概率算法。 如果有n个元素,每个元素被选中的概率都是1/n,不可以有统计意义上的偏差。 一般的想法就是,我先遍历一遍链表,得到链表的总长度n,再生成一个[1,n]之间的随机数为索引,然后找到索引对应的节点,不就是一个随机的节点了吗? 但题目说了,只能遍历一次,意味着这种思路不可行。题目还可以再泛化,给一个未知长度的序列,如何在其中随机地选择k个元素?想要解决这个
2020-10-06 02:46:59
183
原创 打卡2
打卡2 1. 载入各种数据科学以及可视化库 数据科学库 pandas、numpy、scipy; 可视化库 matplotlib、seabon、missingno(缺失值可视化) 2. 载入数据并简略观察 3. 数据总览: describe():查看数据的相关统计量 通过info():了解数据每列的type,有助于了解是否存在除了nan以外的特殊符号异常 4. 判断数据缺失和异常 5.了解预测值的分...
2020-03-24 22:01:17
117
数据库上机2
2018-05-24
数据库上机4
2018-05-24
数据库上机
2018-05-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人