二进制
十进制计数是使用 10 作为基数,那么二进制就是使用 2 作为基数,类比过来,二进制的数位就是 2^n 的形式。
- 逻辑右移 1 位,左边补 0 即可。
>>
- 算术右移时保持符号位不变,除符号位之外的右移一位并补符号位 1。补的 1 仍然在符号位之后。
>>>
余数
散列函数、加密算法、循环冗余校验
迭代法
- 求数值的精确或者近似解
- 在一定范围内查找目标值
- 机器学习算法中的迭代
排列 组合
- n 个元素里取出 m 个的组合,可能性数量就是 n 个里取 m 个的排列数量,除以 m 个全排列的数量,也就是 $(n! / (n-m)!) / m!$
- 对于全组合而言,可能性为 2^n 种。例如,当 n=3 的时候,全组合包括了 8 种情况。
动态规划
树
时间、空间复杂度
概率论
线代
程序员的数学应用地图
References
- 程序员的数学基础课 - 极客时间