数据结构综述
前言
数据结构是计算机相关专业必修的一门专业课,虽然大二的时候学习过,但是很多概念还是有些遗忘了,有必要再把教材从头再看一遍。
教材使用的是清华大学出版社的严蔚敏的数据结构(C语言版)一书。不得不讲这本书编写得确实经典,现在重读一遍对数据结构这门学科又有了更深的认识。
花了一周时间,仔细通读了教材,用 XMind 作了一个思维导图,把具体的知识点和联系都理顺了一遍,确实思路清晰了很多。
思维导图
这是朴素版的思维导图,适合复习完成时使用。
假设自己已经复习好了,尝试对着这个思维导图,向别人讲解数据结构每一章的相关知识。在不借助资料的情况下,对着这张图能够讲清楚讲明白,那么我觉得对于概念的复习、整个知识框架的掌握已经非常到位了。
详细版的思维导图我已经上传 CSDN 数据结构思维导图
上机实践
数据结构作为一门重要的专业课,光会概念也是不行的,必须去实践,必须上机去写代码,才能真正体会到数据结构在计算机学科中的应用。
打算的是把以前上机做过的题再来一遍,加深对数据结构的理解和认识。这些题我会慢慢更新。
| 上机习题 | 对应章节 |
|---|---|
| 1.约瑟夫问题 | 线性表 |
| 2.集合合并 | 线性表 |
| 3.单词压缩存储 | 线性表 |
| 4. 双向链表复制 | 线性表 |
| 5.一元多项式相加 | 线性表 |
| 6. 求循环小数 | 线性表 |
| 7.一元多项式相乘 | 线性表 |
| 8.求循环节 | 线性表 |
| 9.表达式求值(1) | 栈和队列 |
| 10.从中缀向后缀转换表达式 | 栈和队列 |
| 选作1.表达式求值(2) | 栈和队列 |
| 11. 括号匹配 | 栈和队列 |
| 12. 迷宫问题 | 栈和队列 |
| 13.判断出栈序列 | 栈和队列 |
| 14. 矩阵的快速转置算法 | 数组和广义表 |
| 15. 稀疏矩阵的乘法运算 | 数组和广义表 |
| 16. 广义表的建立与基本操作 | 数组和广义表 |
| 选作2. 广义表反序 | 数组和广义表 |
| 17. 二叉树的建立与基本操作 | 树和二叉树 |
| 18.二叉树遍历序列还原 | 树和二叉树 |
| 19.二叉树的最近的公共祖先 | 树和二叉树 |
| 20. 二叉树的同构 | 树和二叉树 |
| 21. 前缀码判定 | 树和二叉树 |
| 22. 计算WPL | 树和二叉树 |
| 23. 图的广度优先遍历 | 图 |
| 24. 网络楼楼通 | 图 |
| 25. 求单点的最短路径 | 图 |
| 26. 平衡二叉树 | 查找 |
| 27.排序 | 内部排序 |
| 28. 统计工龄 | 内部排序 |