编辑推荐
本书以数据结构为主线,算法为辅线组织教学内容。全书共分10章:绪论、线性表、字符串、栈与队列、二叉树与树、集合与字典、高级字典结构、排序、图和算法分析与设计。本书体系完整,概念清楚,内容充实,取材适当。版在2004年被评为“北京市高等教育精品教材”。
内容简介
本书以数据结构为主线,算法为辅线组织教学内容。全书共分10章:绪论、线性表、字符串、栈与队列、二叉树与树、集合与字典、高级字典结构、排序、图和算法分析与设计。本书体系完整,概念清楚,内容充实,取材适当。版在2004年被评为“北京市高等教育精品教材”。
这次再版,采用“数据结构作为抽象数据类型的物理实现”观点,在内容和形式上都进行了许多改进和扩充。提高了抽象数据类型在教学中的地位和作用;更加突出了重点,提高了全书的可读性,还补充了习题,增加了索引。
由于在编写中注意到知识模块的独立性和相关性,不同专业和不同水平的学生可以根据需要组合使用。本书既可以作为信息与计算机专业大学本科的“数据结构”教材,也可以作为一般理工科专业本科和计算机专业专科学生学习相关课程的教材或教学参考书。
目录
- 1绪论
- 1.1从问题到程序
- 1.1.1问题分析与抽象
- 1.1.2程序的设计与实现
- 1.2抽象数据类型
- 1.2.1什么是抽象数据类型
- 1.2.2意义与作用
- 1.2.3举例
- 1.3 数据结构
- 1.3.1什么是数据结构
- 1.3.2数据结构的分类
- 1.3.3结点与结构
- 1.3.4外存数据的组织
- 1.4算法
- 1.4.1什么是算法
- 1.4.2算法的设计
- 1.4.3算法的精化
- 1.4.4算法的分析
- 小结
- 习题
- 2线性表
- 2.1基本概念与抽象数据类型
- 2.1.1基本概念
- 2.1.2抽象数据类型
- 2.2顺序表示
- 2.2.1存储结构
- 2.2.2运算的实现
- 2.2.3分析与评价
- 2.2.4顺序表空间的扩展
- 2.3链接表示
- 2.3.1单链表表示
- 2.3.2单链表上运算的实现
- 2.3.3分析与比较
- 2.3.4单链表的改进和扩充
- 2.4应用举例
- 2.4.1Josephus问题
- 2.4.2采用顺序表模拟
- 2.4.3采用循环链表模拟
- 2.5矩阵
- 2.5.1矩阵的顺序表示
- 2.5.2稀疏矩阵的表示方法
- 2.6广义表与动态存储管理
- 2.6.1广义表
- 2.6.2结点的动态分配与回收
- 2.6.3废料收集与存储压缩
- 小结
- 习题
- 3字符串
- 3.1字符串及其抽象数据类型
- 3.1.1基本概念
- 3.1.2抽象数据类型
- 3.2字符串的实现
- 3.2.1 顺序表示
- 3.2.2链接表示
- 3.3模式匹配
- 3.3.1朴素的模式匹配
- 3.3.2无回溯的模式匹配
- 小结
- 习题
- 4 线与队列
- 5 二叉树与树
- 6 集合与字典
- 7 高级字典结构
- 8 排序
- 9 图
- 10 算法分析与设计
- 参考文献
- 索引
- 算法清单
- 后记