码迷,mamicode.com
首页 > 其他好文 > 详细

程序员的数学

时间:2020-04-12 18:58:21      阅读:73      评论:0      收藏:0      [点我收藏+]

标签:分解   规律   复试   面对复杂   情况   就是   个数   解决问题   大数   

程序员的数学

0 -- 做出简单规则

0 明确表现可 "无即是有"。换言之,就是不对 "无" 进行特别处理。引入 0 以后,
更容易简化规则。如果找出具有一致性的简单的规则,则便于机械式处理,让计算机来解决问题。

逻辑 -- 两个世界

逻辑基本上被分为 true 和 false 两个世界。解决问题时,并不是眉毛胡子一起抓,而应该根据某条件分为 “条件成立”
和 “条件不成立” 两种情况来解决。逻辑同时也是消除自然语言歧义的好工具。

余数 -- 分组

对于有无数个对象的问题,只要发现其规律,就能使用余数将其简化为对象个数较少的问题。
有效利用余数,能将分散的事物同等看待并加以分类。通过 “余数” 进行分组之后,本来需要反复试验的问题也能轻松解决。

数学归纳法 -- 通过 2 个步骤挑战无穷

数学归纳法只需要通过基底和归纳 2 个步骤,就能进行有关无穷的证明

排列组合 -- 关键在于认清问题的性质

对于多得无法无法直接计数的庞大数据,先缩小规模找出问题的本质,再将其抽象化,就能得到答案。

递归 -- 在自己中找自己

递归也是分解问题的方法,但不是分解成同类同规模的问题,而是分解成同类不同规模的问题。在面对复杂的问题时,先观察
它的内部是否含有相同结构的小规模问题。如果正确地找到了递归结构,就可以使用递归公式抓住问题的本质。

指数爆炸

包含指数爆炸的问题,规模稍微一扩大,就会变得棘手。但是相反,若能有效利用指数爆炸,就能将复杂的问题简化。

不可解问题 -- 展示了原理上的界线

我们能有计算机来解决的问题都是无穷的。但是,这个无穷也只是可数的。所有问题的集合是比可数更多的无穷,那里有我们无法及其的世界。

程序员的数学

标签:分解   规律   复试   面对复杂   情况   就是   个数   解决问题   大数   

原文地址:https://www.cnblogs.com/SLchuck/p/12686549.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!