[读书笔记]计算机程序设计艺术第一卷

今天早上送了老婆去上班后,终于把<<计算机程序设计艺术>>第一卷给看完一遍了,应该说过了一遍,因为里面很多证明和数学推理我并没有动手做,所以脑袋里也就只知道第一卷是讲什么和此套书和其他算法书的区别,这里我就谈谈我几点体会。

<<计算机程序设计艺术>>其实讲得不难,很多东西在我们大学本科的数据结构里的书都有说到,只是大学本科的数据结构告诉我们的基础数据结构有哪些,常用排序有哪些,深入些就没在详述,有些就一笔带过,有些就打*号了,老师自然也就不理会了。<<计算机程序设计艺术>>这本书深入介绍了算法的推理和每一种算法的来龙去脉,如果您数据结构学得很深入,再把<<计算机程序设计艺术>>这卷书认认真真的啃完,您就象一个绝世高手打通了任督二脉,设计起来更加游刃有余,甚至可以自创绝招,形成自己门派,呵呵,越扯越远了,这里的认认真真的啃完并不象我这样一鼓脑的过一遍。

<<计算机程序设计艺术>>第一卷描述了 基础数学知识,数学归纳法,MIX汇编语言,基础数据结构和动态存储分配。

第一部分的基础数学知识和数学归纳法,基本涵盖了我们从小到大的数学知识,基本上是广度广,深度深,而且由于很多数学术语与我们读书的书本并不太一致,所以很难理解,而且对于想学数据结构的计算机学生来说,是枯燥的一段,这里我建议大家学习下《什么是数学》这本书,这本相对比较容易理解,学习起来也不太费劲。

第二部分MIX汇编语言 基本上大家就别看了,学完也没用,就是对书本更好理解就是了,建议有时间的可以将程序改写成自己熟悉的语言,最好是用C语言,我自己就打算用C#了

第三部分基础数据结构和动态存储分配 就是介绍了 表,树,图 。介绍得比较详细,基本上很多种结构都是展开来谈的,比如说双重链接循环表。第三部分有个很容易混的地方,此书的图描述为树的一种特殊状态,刚开始是用书表示,后面的翻译又变成了图,估计是翻译的人不同导致的,比较容易混淆。

总得来说,这卷书很难读懂,需要下很多苦力啊。

对于第二卷数值运算,早上也翻了一下,觉得都是针对数字运算的,直接跳到第三卷。

你可能感兴趣的:(程序算法,每天都有事)