《数据结构(C语言版)》严蔚敏第4版读书总结与数据结构入门回顾

由于本科不是计算机专业的,之前也没学过类似的课程,在看这本书时花了很长时间,也做了一些准备,网上听人介绍,建议先学离散数学,就自学了一点离散数学啥的(国内的和国外的那本《离散数学及其应用》都看过一点),也看过一点国外的那本《数据结构》,但由于自己没太大毅力,加之本专业课程较多和不习惯国外教材的思维模式啥的,一直都是各种教材浅尝辄止,大都只看了一点基础就没继续了。同时也是因为迷信离散数学是数据结构的先修课。

之前写程序一直没有数据结构的概念,经常就是一个数组写到底。大一时C语言大作业做了一个好友信息管理,就是纯控制台,所有数据用全局变量数组存储,当时还觉得挺得意的,因为花了很大功夫,代码很冗长,现在其实想想用数据结构的知识会简洁很多。第一次了解到数据结构,还是因为看到二级C里面考数据结构才了解到的,当然,裸考,也没具体看了。后来,学数据结构是因为常听说“程序设计=算法+数据结构”,加之想跨专业工作考研啥的,就开始下决心自学数据结构。

刚开始自学时很不习惯这种不给出完全代码的风格,加之C语言结构体指针学的很浅,自己也没想太多怎么实现,就放弃了这本书。在查资料后,了解到有本程杰的《大话数据结构》不错,就借 来看看。不得不说,那本书写的幽默易懂,适合初学者用来建立学习兴趣,印象最深的就是作者在开头举的那个故事里“没学过数据结构吧!”。于是通过这本书大概了解了数据结构的表,队列,栈,树,图啥的是啥意思,相对地,这本书比较浅显,也就不适合用于深度学习。大二暑假时曾学过一遍,看到KMP算法时被卡住了就一直搁着了。最近是今年3月份重新开始啃严奶奶版的。

一直看的很随意,一直到今年3月份才开始决定写点东西实践下,主要是因为考研论坛xuzhezhaozhao(http://blog.csdn.net/xzz_hust)介绍的学习方法,加之其将代码放到了GitHub上让我有了参照,便开始边依葫芦画瓢边看书自己码了起来,在此表示感谢。最开始用的CodeBlocks,后来决定从大流,用VS,用的2013的,大部分代码放在了GitHub:https://github.com/awyd234/DS_yan,部分代码有参考。

啰嗦了这么多,谈谈这本书的感受吧。严版的这本网上评价不太好,有很多错误,大家更看好国外教材。可能我看的第4版吧,错误相对而言还算较少,也或许是我能力不够找不出来吧。总的来说,这本相对而言用于打基础还是不错的,相比于Data Structureand Alogrithm Analysis in C的更重于理论分析,两本书这点可以用于互补的。本书概念较多,看上去有点头大,可能于国内编教材风格有关吧。本书的代码风格我模仿过,感觉比我以前的初学者似的代码风格好一些,就暂时先用着,至于Weiss的风格还是不太习惯将函数类型单独成行以及用/* */注释。书中代码不太完整,也有一定好处,可以强迫自己理解算法思想了再自己加以实现,在此过程中,我也学会了用IDE对程序进行Debug。另外本书配套的有教学平台,可以演示算法的执行过程,其中为了避免ElemType到底是用char还是用int的问题,光盘中的代码用#define和#ifndef来处理,这点感觉不错。另外由于本书给的部分代码较复杂,如KMP,可以多查查资料,不要一个劲地死磕一本书。

第一次写这类读书总结,较啰嗦,见谅。

你可能感兴趣的:(读书总结)