【程序员的数学基础课-黄申】学习笔记更新中
博客内容来自——极客学园>程序员的数学基础课
现在数学在程序员的日常里重要性逐渐显现,但作者不建议去啃大学课本,可以先广度再深度。
作者每节课都用心总结截图如下,建议购买课程更新学习
01讲二进制:不了解计算机的源头,你学什么编程
02讲余数:原来取余操作本身就是个哈希函数
星期制
分页
hash散列加密长度一致的密文
03讲迭代法:不用编程语言的自带函数,你会如何计算平方根
印度国王为打赏国际象棋发明人,每格放米的故事。
二分法查找
04讲数学归纳法:如何用数学归纳提升代码的运行效率
国王一共打赏了多少颗大米?
05讲递归(上):泛化数学归纳,如何将复杂问题简单化
06讲递归(下):分而治之,从归并排序到MapReduce
归并排序
MapReduce的主要步骤
07讲排列:如何让计算机学会“田忌赛马”
从田忌赛马的答案推到到暴露**
08讲组合:如何让计算机安排世界杯的赛程
世界杯赛制
先排列再排序,最后去重
多元文法的匹配模式
09讲动态规划(上):如何实现基于编辑距离的查询推荐
10讲动态规划(下):如何求得状态转移方程并进行编程实现
最少钱币数
11讲树的深度优先搜索(上):如何才能高效率地查字典
树的组成和深度遍历方式
12讲树的深度优先搜索(下):如何才能高效率地查字典
配合栈进行遍历,大大节省内存
13讲树的广度优先搜索(上):人际关系的六度理论是真的吗
广度搜索、用队列配合n层查找