数据结构论坛

首页 » 分类 » 常识 » 读大话数据结构有感
TUhjnbcbe - 2023/9/12 20:48:00
北京重点荨麻疹医院 https://m-mip.39.net/disease/mip_10490515.html

读《大话数据结构》有感

大话数据结构是作者程杰潜心三年的扛鼎之作,可谓“厚积厚发”。常见的生活小实例贯穿了整本书,作者通过简单的例子来进行知识的类比,且充分运用图像来描述抽象内容,正如书中所说“一图值前言”,的确,用上千个文字都描述不清楚的东西,很可能一张图就能解释清楚,书中作者则巧妙地使用着图形与文字,使得内容生动形象,更容易读懂。

书中作者从数据结构是什么讲起,向我们介绍了一些基本术语;再逐渐引出算法及其效率,为我们讲解什么是算法的时间复杂度;同时向我们介绍了线性表、链表、队列、堆栈、串以及树等等的存储结构,并通过实例告诉我们其各自的用法;最后为我们讲解了那些形如:“哈夫曼树”、“斐波那契查找”等经典算法的设计,以及讲诉了快速排序、冒泡排序等高效的排序算法。

而且整本书作者使用了新颖的解读方式,为我们讲解了算法了演变过程,借用“进化论”的思想为我们介绍不同算法的优缺点,而不是千篇一律地告诉我们算法是什么,算法原本就是较为抽象的概念,非要给它下定义,恐怕是谁说谁有理,最后谁也讲不清楚吧。让我们一起去体验作者微妙的思维转变带来的奇幻效果吧!

相比教材而言,其内容相对直观,且使用大量图表说明,就更加的清晰易懂了,是一本非常好的零基础入门书。都说想要学习某样东西,前提是得先去了解它,而教材整本书虽然都在讲数据结构,但始终没有给出一个准确的定义,而大话数据结构中,刚开始就指明:“数据结构是相互之间存在一种或多种特定关系的数据元素的集合”,首先不说它是否足够准确,但起码使读者对数据结构有了最初步的认知与了解,总要比还未了解就去学习要好吧。

这本书原本是作为本学期数据结构课程的教辅资料去读的,但逐渐发现它比教材还更适合我,书中不仅讲述数据结构的相关知识外,还融入了作者本人的思维特点。形如一道简单的数学题,作者不再是传统的问“3+2=?”,而是问“?+?=5”,答案不再是固定的,也许你会有“有很多种答案,那什么才是对的呢?”这一疑问,实际上你能想到的答案全部都对;编程算法设计亦如此,能得到相同效果的算法,不管是用哪种思想构思,不管是使用哪种方式编写,甚至不管是选用哪种编程语言,都可以说它是相同的算法,只不过不太同的可能是算法复杂度即算法效率的区别。

作者通过这种刷新认知的方式调动读者思维,在学习的过程中给读者更深刻的印象。小小的转变就充分调动了我们的思想,教我们要学会多思考,这样才能逐渐突破思维的围墙。书中作者使用这种循循渐进的方式,一步一步的引出并深化数据结构的内容,由浅及深向我们阐述着数据结构的相关内容。通过本学期的课程学习,以及大话数据结构的阅读,也使得我对数据结构有了新的认知,我也逐渐认识到数据结构与算法的“亲密性”,它们相互依赖,共同组成了程序;而程序是需要基于计算机的,这又引出了存储结构这一内容:算法的逻辑结构与计算机存储的物理结构相对应……整本数像是一条环环相扣的铁链,由零散的数据项到线性的链表、队列、堆栈等等,再又线性到树、图的网状结构;就如同点线面体一样,基于前者又高于前者,维度逐渐逐渐的增加,所能描绘的图像也越来越生动,同理学得越深入,我们能利用所学知识帮忙解决的问题自然就更多。

对我而言,大话数据结构是一本非常好的数据结构入门书,它将抽象的学问讲的具体,对于初学者来说是非常好的指引和帮助。上面我将教材与之对比也并非一味的吐槽教材与其他大多数参考书一样,都是千篇一律的讲述“它是什么”,而不是帮忙解答“它为什么是那样”,这对于好奇的初学者来说是难以接受的。而读完大话数据结构,给我的收获不仅是使我进入了数据结构知识的世界,更是进入了数据结构思维的世界,让我明白了有的时候“钻漏洞”之类的方法确实很重要,因为它可能是一种思维的突破、模式的创新,从而可能带来效率不可小觑的提高,正如书中那行经久不衰的经典算法一样,经住了时间的考验,还能被广泛引用,说明其固然有我们值得研究的地方。

大话数据结构在教我学习新知识的同时告诉我思考的重要性。确实如此,学习固然重要,但在学习的过程中千万不能把思考给遗忘,因为它是我们检验所学的重要方式,它能帮助我们过滤留下正确的知识精华,同时是我们学以致用的前提之一。

总之,学以致用这一过程必定是任重而道远的,特别是在这飞速发展的时代,各种产品的更新换代应接不暇,虽然方便了我们的生活,但生活也大大提高了对我们的要求,使得我们需要学习和掌握的知识越来越多,因此我们就更应该主动地去探索去学习,并享受于充实自己的那一过程,这一才能让我们能够成为生活的主导者。

1
查看完整版本: 读大话数据结构有感