算法与数学

学过数据结构的对这个应该都不会感到陌生,但是乍一看原来是数学,然而事实就是如此。二分法的数学源头就是这个。

还有前缀和的

我们这里所说的前缀和其实就是我们在高中学的数列中的Sn(前n项和),只是我们这里需要将S1 , S2 , S3 , S4 …… Sn当作一个新的数组。

还有这个当年十分惊艳的算法

其实就是牛顿迭代法。

比大小就更加是了。冒泡排序 —— 两两比较。如果你比过大小你应该会想到的。就是找最大的数字,以一个为最大的,然后和别的数字比,有大的出现就换,没有继续下去。

动态规划则是最优化方面的问题

计算机本来就是一种工具,你还原回它的本质它也没有什么如同神明一般的存在。毕竟现阶段距离AGI还十分遥远,AI的自我意识是哲学问题了。况且就连AI的算法都是基于数学原理的。

数学作为一种对自然事物或者事物之间关系的一种抽象,它已经成为我们描述自然的最佳语言。它代表的是一种逻辑必然。无论你怎么思考,只要你思考了事物之间的关系和数字那你就算不学数学,自己闭门造车发明新的符号,最终也会和数学不期而遇。就如同哲学一般,数学已经是人类自身对几乎所有的可能性的思考。是人类逻辑思考的必然。

计算机发明的初衷就是为了减少人类计算的工作量。它是人类思维的结晶。它无论怎么被人类推经都永远离不开数学。对算法的更新也离不开数学和数学产生的一大堆优化学科。你可说计算机就是大杂烩,是的我们把所有问题收集起来(数学四色问题、公式检验)用计算机来完成。

所以要学好算法绝对不是让你去设计算法。算法牵扯到了数学、优化理论、博弈论、概率学...但是如果你要设计算法找到更好的解法,你就不得不博览群书。就如同Dijkstra、图灵、赫伯特西蒙、高德纳...等计算机先贤一样,了解数学和数学所衍生的一系列与数学决策有关的学科。

算法与数学的渊源莫大,然而,数学绝对不是算法的全部。数学证明了数字之间的关系,这使得我设计算法的时候可以多一些认识。算法在暴力破解后的是因为时间复杂度和空间复杂度太大,从而为了减少消耗而设计的。有时候现有的算法给不出答案,不妨去数学那里碰碰运气。

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值