注册 登录 进入教材巡展
#
  • #

出版社:西安电子科技大学出版社

以下为《脑洞大开——数据结构另类攻略》的配套数字资源,这些资源在您购买图书后将免费附送给您:
  • 西安电子科技大学出版社
  • 9787560647128
  • 205303
  • 68190201-1
  • 短16开
  • 421
  • 336
  • 工学
  • 计算机科学与技术
  • TP3
  • 自动化技术、计算技术
  • 本科
内容简介
真相,不只有一个
——前言什么的
嘿嘿,又是前言时间喽。
一、一点点不算感悟的感悟
嗯,表示对于从小就看柯南的孩子而言,”真相,只有一个”这句话貌似已经在脑袋瓜里根深蒂固了。
嘿嘿,不过在数据结构里,这句话又要被毁三观喽。
因为,在数据结构中,没有*的正确或者错误,有的只是合适和更合适。我们要做的就是从这些合适与更合适中找出*赞的一种来构建我们的梦。
是的,是筑梦哦,不是摞代码。
这也是这本书的初衷,数据结构,不应该仅仅是代码的简单堆叠,而是一种砖头类的东西。学过它之后,想构建什么,就是你的事情喽。

真相,不只有一个


——前言什么的


嘿嘿,又是前言时间喽。


一、一点点不算感悟的感悟


嗯,表示对于从小就看柯南的孩子而言,”真相,只有一个”这句话貌似已经在脑袋瓜里根深蒂固了。


嘿嘿,不过在数据结构里,这句话又要被毁三观喽。


因为,在数据结构中,没有*的正确或者错误,有的只是合适和更合适。我们要做的就是从这些合适与更合适中找出*赞的一种来构建我们的梦。


是的,是筑梦哦,不是摞代码。


这也是这本书的初衷,数据结构,不应该仅仅是代码的简单堆叠,而是一种砖头类的东西。学过它之后,想构建什么,就是你的事情喽。


在学的过程中,还是那句话:靠的是自己。所有的书啊、代码啊啥的,依然都是辅助。只有你自己搞明白了这段代码为什么这么写,才是真正有收获,语言的学习永远都是一种感悟的过程。


而且,这回的感悟更有意思。


因为,它的真相不只有一个,你的每次感悟都未必是*合适的解决方案,所以你还有更大的感悟空间,这种看似没有止境的特点也算是数据结构的美吧。


其他的,我们慢慢来。


二、写作缘由与经历


这本书的初稿完成于2014年12月,是我*次在学校学习数据结构的时候,基本上可以算是学校的数据结构一开课,我就开始写,刚好在考试前完成了全书的初稿。起初的原因是对当时学校所用教材中知识的讲述方法有点”怨念”,觉得知识不应该这样枯燥,应该是很立体且很有趣的,加之自己当时对数据结构也蛮有兴趣,觉得可以通过自己的努力,将这些看似很抽象的数据结构通过另类的方法让它变得具体多彩。于是,这本书的初稿就诞生了。书中的语言风格和行文方式以及内容编排都有自己的特点,这也直接决定了这本书的与众不同。现在的我,对初稿进行了多次完善,使本书能够以更完美的姿态展现在大家面前。


由于写作本书的出发点是不把它作为一本传统的教材,所以全书的框架设计、内容逻辑相对于教材有较大区别。为了能够让大家更容易、更轻松地领悟数据结构,我对本书的知识框架做了较大的调整——我们会从*熟悉的数组结构入手,层层递进,增加大量互动性问答来降低难度等级,增加闯关趣味性,同时辅以大量图片辅助理解并搭配各种小问题一起研究,较好地摆脱了传统书籍的说教式知识传授过程。此外,在这本书中我们将更加注重细节,对大量不被提及的细节不再人云亦云而是告诉你为什么会这样,让你能够更好地理解和掌握数据结构本身。


希望这样的设计能给大家带来更好的学习体验。


三、本书结构


本书主要分成了9章:


第1~2章是一个开头总结和引导,分别介绍了数据结构和算法,告诉大家一切并没有想象得那么难。


第3~7章每章都介绍了一种或两种数据结构,分别为数组和串、链表、栈与队列、树及图。


第8~9章是对排序和查找算法的趣味研究。


中间你可能会碰到很多”坑爹”的问题,别怕,很正常,坚持读下去,并配合以实践,相信我,不久你便会豁然开朗。


四、致谢


首先依然还是要感谢父母,他们一如既往地支持我做自己感兴趣的事情。在本书的成书过程中,杭州电子科技大学胡华副校长和王立波老师对书稿进行过多次审核,提出了很多很有价值的修改意见,非常感谢他们的付出,使得这本书能够以更加完善的姿态展现在读者面前;同时要感谢西安电子科技大学出版社的支持,尤其感谢编辑陈婷老师和编审马乐惠老师在本书出版过程中提供的诸多帮助。


感谢母校杭州电子科技大学对本书出版的全额经费支持。


五、求”勾搭”


当然,毕竟金无足赤,人无完人,更何况我自己也还远远达不到真正的高手水平……所以书中一定还会有所不足以及这样那样的问题,所以大家如果发现了什么瑕疵或者对这本书有更好的建议,随时欢迎沟通交流指(gou)教(da)。问题肯定还有很多,所以依然需要你辩证地看它喽。


联系邮箱:ddizxt@。


*后,希望这本书能对你有所启发哦。



刘隽良


2017/4/9


于杭州电子科技大学

显示全部信息
目录
第1章 哪有那么难
1.1 什么是数据结构?
1.2 到底都学些啥?
1.3 什么是抽象数据类型(ADT)?
1.4 什么是逻辑结构?
1.5 什么是物理结构?
1.6 为什么会有这么多数据结构咧?

第2章 哎呀算法
2.1 什么是算法?
2.2 算法效率的度量方法
2.3 算法的时间复杂度和空间复杂度

第3章 从数组和串说起
3.1 数组内存的静态分配和动态分配
3.2 一维数组的访问
3.3 一维数组的遍历
3.4 一维数组元素的插入和删除
3.5 二维数组以及假如没有二维数组
3.6 有一种矩阵叫稀疏矩阵
3.7 什么是串?
3.8 字符串的基本处理
3.9 字符串略微高级点的处理

第4章 另一个重要的东西:链表
4.1 什么是链表?
4.2 单向链表
4.3 单向循环链表
4.4 双向链表
4.5 链表的遍历和连接
4.6 链表结点的插入和删除
4.7 链表的反转以及静态链表

第5章 学以致用——栈与队列
5.1 什么是栈?什么是队列?
5.2 栈和队列的实现
5.3 栈与队列实现的细节技巧
5.4 栈的应用之一:递归?(大雾)
5.5 栈的应用之二:回溯算法
5.6 栈的应用之三:简易文字处理器
5.7 队列应用:好长的代码

第6章 画棵树吧
6.1 什么是树
6.2 树的存储结构
6.3 什么是二叉树?它是树吗?
6.4 二叉树的存储结构
6.5 二叉树的遍历
6.6 二叉树的构建
6.7 二叉树的查找
6.9 二叉树的复制
6.10 线索二叉树
6.11 树、森林和二叉树的转换
6.12 哈夫曼树和哈夫曼编码

第7章 无图无真相
7.1 什么是图
7.2 图的表示法
7.3 图的遍历
7.4 最短路径计算
7.5 最小生成树
7.6 有向图的拓扑排序

第8章 查找的基础:排序
8.1 经典的回顾:冒泡排序法
8.2 又是老朋友——选择排序法
8.3 插入排序法
8.4 希尔排序法
8.5 快速排序法
8.6 二叉查找树排序法
8.7 顺带一提的堆排序

第9章 最后,该查找啦
9.1 顺序查找
9.2 二分查找
9.3 索引查找
9.4 二叉查找树查找
9.5 平衡二叉树(AVL树)
9.6 B-树和B+树
9.7 了解一下哈希查找
会是终结吗?嘿嘿当然不会
参考文献