![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数学基础
咕噜✨
这个作者很懒,什么都没留下…
展开
-
数学基础课之02余数
待复习 离散数学哈希部分求余操作可以方便将大量数据分组。在求余时加入一个随机数还可以增加数据散列的随机程度,更适合需要将数据重新洗牌的应用场景,比如加密算法、MapReduce中的数据分发、记录的高速查询和定位等等。根据评论补充密码学hash+salt内容,待学习From Wiki :盐(Salt),在密码学中,是指在散列之前将散列内容(例如:密码)的任意固定位置插入特定的字符串。这个在散...原创 2018-12-12 14:18:08 · 197 阅读 · 0 评论 -
数学基础课之01二进制
关于Java的移位符:左移位 :<<右移位 :>>表示算术右移, >>>表示逻辑右移 (python同Java)由于java的二进制数最高位为符号位(0为正,1为负),右移位涉及到最左补0还是补1的问题。逻辑右移直接补0即可,而算术右移时保持符号位不变,除符号位之外的右移一位并补 0。对于C或C++,右移位为>&am原创 2018-12-10 22:56:51 · 350 阅读 · 0 评论 -
数学基础课之03迭代
很有启发的一点:将int mid = (left + right) / 2 改成int mid = left + (right - left) / 2 ,可以有效防止溢出的发生。原创 2019-01-28 22:50:57 · 168 阅读 · 0 评论 -
数学基础课之04数学归纳法
数学归纳法的一般步骤是这样的:证明基本情况(通常是 n = 1 的时候)是否成立;假设 n = k-1 成立,证明 n = k 时也成立(k 为任意大于1的自然数)数学归纳法实现的运行时间几乎为 0。不过,数学归纳法需要做出合理的命题假设,随后才能进行证明,而这一点通常较难实现。评论区摘抄:“递归把计算交给计算机,归纳把计算交给人,前者是拿计算机的计算成本换人的时间,后者是拿人的时间换计...原创 2019-01-28 23:15:36 · 479 阅读 · 0 评论