浅学算法一二事
发布于:2018-02-05 17:19  浏览:

算法实现是人脑迁就计算机,算法本身不是吧,只不过通常要算法做的事情通常人们不屑于做就是了。比如2000个人排身高之类的,对于人类来说,误差5厘米以内就是一样高了,所以排序法就用不上了,按照180以上,175-180,170-175,170-175,165-170,160-165,160以下几个档简单的分一下就可以了。计算机的话,如果具体到1毫米也有先后,所以就得花很多功夫,如果不是,就不用算法了,复杂度只需要O(N)的分类操作就可以了。

算法是将一个复杂问题分解成有限的各个小步骤。

我觉得学习算法,并不是为了知道那个算法高效,关键还是先把问题找出答案,找不出答案一切都没有意义。求解是第一步,解的效率是第二步。

有些方法,理论上有解,但是效率太低,实际上没有意义。这个是效率被关注的一个原因。但是对于大多数人来说,连求解都不会。空谈效率有什么用。很多教科书就是把重点放在效率上,而不是求解上。

当然,不同问题有不同的解法,要找出一般的方法,真的不容易。绝大多数的教科书,其实都是在误导,越是讲述详细的反而都是违背了人类的思维途径。给我们看到的只是一个个定理,然后咱们去验证。并没有真正的授之以渔。而绝大多数,事实都是和讲述是反着的。真正解题的过程,那个是能够直捣黄龙,直接发现问题的根源。而中间的不断的反复,甚至是猜想,才是关键。
解题本身就是一个复杂的运算,能够讲明白这个过程的可以说是太复杂了。高爷爷算是一个在计算机上的天才。所以他讲的这个过程不是直接的,但却是最清晰的。但是这也需要读者要比一般的更有耐心,基础更扎实。