微信扫一扫,移动浏览光盘
简介
本书是根据高校计算机教材编委会讨论制定的《数据结构》课程教学大纲编写的教材。系统地介绍了各种类型的数据结构和检索排序的各种方法。对每一种数据结构从其逻辑结构、抽象运算、存储结构以及在相应存储结构上的运算实现都进行了详细的描述,并尽可能地列举了各种数据结构的不同应用实例。对每一个算法都用C语言描述其实现,并对算法的性能给出定量或定性的分析比较。最后一章讨论了文件的各种组织方法。
本书内容丰富、概念清楚、叙述严谨、可读性强。每章配有丰富的例题、习题和上机实习题,并配套出版与之相对应的《数据结构习题解析与上机指导》,便于教学和学生自学。
本书以知识单元为基本构件,便于拆卸和重组,以适应不同院校的不同培养层次的教学需要。可作为大专院校计算机科学与技术专业的教材,更适合作为各校非计算机专业辅修计算机专业课程的教材,也可作为一切从事计算机科学与技术工作的科技人员的自学参考书。
目录
前言
1 绪论
1.1 数据结构在计算机科学与技术中所处的地位
1.1.1 什么是数据结构
1.1.2 《数据结构》课程的地位
1.2 基本概念和术语
1.3 数据类型和抽象数据类型
1.4 算法描述与算法评价
1.4.1 算法描述
1.4.2 算法的设计要求
1.4.3 算法的评价
习题一
2 线性表
2.1 线性表的基本概念
2.1.1 线性表的逻辑结构
2.1.2 线性表的方e算
.2.2 线性表的顺序存储
2.2.1 顺序表
2.2.2 顺序表上的基本运算
2.3 线性表的链式存储结构
2.3.1 单链表及其单链表上的基本运算
2.3.2 循环链表
2.3.3 双向链表
2.4 线性表顺序存储结构和链式存储结构
2.5 线性表的应用举例
习题一
上机实习题一
3 图栈和队列
3.1 栈
3.1.1 栈的定义和操作
3.1.2 栈的顺序存储结构
3.1.3 栈的链式存储结构
3.2 栈的应用举例
3.2.1 表达式求值
3.2.2 递归的实现
3.3 队列
3.3.1 队列的定义和操作
3.3.2 队列的顺序存储结构
3.3.3 队列的链式存储结构
3.4 队列的应用举例
习题三
上机实习题二
4 串
4.1 串的基本概念和存储结构
4.1.1 串的基本概念
4.1.2 串的存储结构
4.1.3 串变量的存储
4.2 串的基本运算
4.2.1 串的联接
4.2.2 求子串
4.2.3 子串的插入和删除
4.2.4 串的置换
4.3 串的模式匹配算法
4.3.1 求子串位置的定位函数
4.3.2 模式匹配的一种改进算法
4.4 汉字串
习题四
5 数组和广义表
5.1 数组及其运算
5.2 数组的顺序存储结构
5.3 矩阵的压缩存储
5.4 广义表
5.4.1 广义表的定义
5.4.2 广义表的存储结构
5.4.3 广义表的运算
5.5 m元多项式的表示
习题五
上机实习题三
6 树
6.1 树的基本概念和术语
6.2 二叉树
6.2.1 二叉树的定义
6.2.2 二叉树的性质
6.2.3 二叉树的存储结构
6.2.4 二叉树的应用——二叉搜索树
6.3 遍历二叉树
6.3.1 遍历二又树的定义及递归算法
6.3.2 按前序序列建二叉树
6.3.3 遍历二叉树的非递归算法
6.3.4 二叉树算法举例
6.4 线索二叉树
6.5 树和森林
6.5.1 树的存储结构
6.5.2 森林与二叉树的转换
6.5.3 树与森林的遍历
6.6 哈夫曼树
6.6.1 基本术语
6.6.2 构造哈夫曼树
6.6.3 哈夫曼编码
6.6.4 哈夫曼算法的实现
6.7 回溯法与树的遍历
习题六
上机实习题四
7 图
7.1 图的概念及术语
7.2 图的存储结构
7.2.1 邻接矩阵
7.2.2 邻接表
7.2.3 邻接多重表
7.3 图的遍历
7.3.1 深度优先搜索遍历
7.3.2 广度优先搜索遍历
7.4 最小生成树
7.4.1 生成树和最小生成树
7.4.2 普里姆算法
7.4.3 克鲁斯卡尔算法
7.5 最短路径
7.5.1 求从一个顶点到其他各顶点的最短路径
7.5.2 求每一对顶点之间的最短路径
7.6 拓扑排序
习题七
上机实习题五
8 检索
8.1 检索的基本概念
8.2 线性表的检索
8.2.1 顺序检索
8.2.2 折半检索
8.2.3 分块检索
8.3 树表的检索
8.3.1 二叉排序树
8.3.2 平衡的二叉检索树
8.4 b树
8.5 hash检索技术
8.5.1 hash表技术
8.6 哈希表的检索及分析
习题八
上机实习题六
9 排序
9.1 排序的基本概念
9.2 插入排序
9.2.1 直接插入排序
9.2.2 希尔排序
9.2.3 其他插入排序
9.3 交换排序
9.3.1 冒泡排序
9.3.2 快速排序
9.4 选择排序
9.4.1 直接选择排序
9.4.2 堆排序
9.5 归并排序
9.6 基数排序
9.7 内部顺序方法的比较和选择
9.8 外排序简介
习题九
上机实习题七
10 文件
10.1 文件的基本概念
10.2 顺序文件
10.3 索引文件
10.3.1 isam文件
10.3.2 vsam文件
10.4 散列文件
10.5 多关键字文件
10.5.1 多重表文件
10.5.2 倒排文件
习题十
附录一 关键词索引
附录二 算法索引
1 绪论
1.1 数据结构在计算机科学与技术中所处的地位
1.1.1 什么是数据结构
1.1.2 《数据结构》课程的地位
1.2 基本概念和术语
1.3 数据类型和抽象数据类型
1.4 算法描述与算法评价
1.4.1 算法描述
1.4.2 算法的设计要求
1.4.3 算法的评价
习题一
2 线性表
2.1 线性表的基本概念
2.1.1 线性表的逻辑结构
2.1.2 线性表的方e算
.2.2 线性表的顺序存储
2.2.1 顺序表
2.2.2 顺序表上的基本运算
2.3 线性表的链式存储结构
2.3.1 单链表及其单链表上的基本运算
2.3.2 循环链表
2.3.3 双向链表
2.4 线性表顺序存储结构和链式存储结构
2.5 线性表的应用举例
习题一
上机实习题一
3 图栈和队列
3.1 栈
3.1.1 栈的定义和操作
3.1.2 栈的顺序存储结构
3.1.3 栈的链式存储结构
3.2 栈的应用举例
3.2.1 表达式求值
3.2.2 递归的实现
3.3 队列
3.3.1 队列的定义和操作
3.3.2 队列的顺序存储结构
3.3.3 队列的链式存储结构
3.4 队列的应用举例
习题三
上机实习题二
4 串
4.1 串的基本概念和存储结构
4.1.1 串的基本概念
4.1.2 串的存储结构
4.1.3 串变量的存储
4.2 串的基本运算
4.2.1 串的联接
4.2.2 求子串
4.2.3 子串的插入和删除
4.2.4 串的置换
4.3 串的模式匹配算法
4.3.1 求子串位置的定位函数
4.3.2 模式匹配的一种改进算法
4.4 汉字串
习题四
5 数组和广义表
5.1 数组及其运算
5.2 数组的顺序存储结构
5.3 矩阵的压缩存储
5.4 广义表
5.4.1 广义表的定义
5.4.2 广义表的存储结构
5.4.3 广义表的运算
5.5 m元多项式的表示
习题五
上机实习题三
6 树
6.1 树的基本概念和术语
6.2 二叉树
6.2.1 二叉树的定义
6.2.2 二叉树的性质
6.2.3 二叉树的存储结构
6.2.4 二叉树的应用——二叉搜索树
6.3 遍历二叉树
6.3.1 遍历二又树的定义及递归算法
6.3.2 按前序序列建二叉树
6.3.3 遍历二叉树的非递归算法
6.3.4 二叉树算法举例
6.4 线索二叉树
6.5 树和森林
6.5.1 树的存储结构
6.5.2 森林与二叉树的转换
6.5.3 树与森林的遍历
6.6 哈夫曼树
6.6.1 基本术语
6.6.2 构造哈夫曼树
6.6.3 哈夫曼编码
6.6.4 哈夫曼算法的实现
6.7 回溯法与树的遍历
习题六
上机实习题四
7 图
7.1 图的概念及术语
7.2 图的存储结构
7.2.1 邻接矩阵
7.2.2 邻接表
7.2.3 邻接多重表
7.3 图的遍历
7.3.1 深度优先搜索遍历
7.3.2 广度优先搜索遍历
7.4 最小生成树
7.4.1 生成树和最小生成树
7.4.2 普里姆算法
7.4.3 克鲁斯卡尔算法
7.5 最短路径
7.5.1 求从一个顶点到其他各顶点的最短路径
7.5.2 求每一对顶点之间的最短路径
7.6 拓扑排序
习题七
上机实习题五
8 检索
8.1 检索的基本概念
8.2 线性表的检索
8.2.1 顺序检索
8.2.2 折半检索
8.2.3 分块检索
8.3 树表的检索
8.3.1 二叉排序树
8.3.2 平衡的二叉检索树
8.4 b树
8.5 hash检索技术
8.5.1 hash表技术
8.6 哈希表的检索及分析
习题八
上机实习题六
9 排序
9.1 排序的基本概念
9.2 插入排序
9.2.1 直接插入排序
9.2.2 希尔排序
9.2.3 其他插入排序
9.3 交换排序
9.3.1 冒泡排序
9.3.2 快速排序
9.4 选择排序
9.4.1 直接选择排序
9.4.2 堆排序
9.5 归并排序
9.6 基数排序
9.7 内部顺序方法的比较和选择
9.8 外排序简介
习题九
上机实习题七
10 文件
10.1 文件的基本概念
10.2 顺序文件
10.3 索引文件
10.3.1 isam文件
10.3.2 vsam文件
10.4 散列文件
10.5 多关键字文件
10.5.1 多重表文件
10.5.2 倒排文件
习题十
附录一 关键词索引
附录二 算法索引
数据结构:用C语言描述
光盘服务联系方式: 020-38250260 客服QQ:4006604884
云图客服:
用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问
Video Player
×
Audio Player
×
pdf Player
×