| 第1章 绪论1.1 数据结构的重要性1.2 基本概念和术语1.2.1 基本概念1.2.2 数据类型1.3 算法1.3.1 算法特性1.3.2 算法描述1.3.3 算法性能分析与度量习题第2章 线性表2.1 线性表的逻辑结构2.1.1 线性表的定义2.1.2 线性表的基本操作2.2 线性表的顺序存储结构2.2.1 顺序表2.2.2 顺序表上基本运算的实现2.2.3 顺序表应用举例2.3 线性表的链式存储结构2.3.1 单链表2.3.2 单链表上的基本操作2.3.3 循环链表2.3.4 双向链表及双向循环链表2.3.5 链表应用举例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.2.3 队列的链式存储结构及其基本运算的实现3.3 栈和队列的应用3.3.1 栈的应用举例3.3.2 队列的应用举例3.4 实训习题第4章 串和数组4.1 串的基本概念和存储结构4.1.1 基本概念4.1.2 基本运算4.1.3 串的抽象数据类型描述4.1.4 串的存储结构4.2 串基本操作的实现**4.2.1 串基本操作4.2.2 串的模式匹配算法4.3 数组的定义和运算4.3.1 数组的概念4.3.2 数组的操作4.4 数组顺序存储结构4.4.1 行优先顺序4.4.2 列优先顺序4.4.3 基本操作在顺序存储上的实现4.4.4 动态数组4.5 矩阵的压缩存储4.5.1 特殊矩阵4.5.2 压缩存储4.5.3 稀疏矩阵4.5.4 广义表4.6 实训习题第5章 树5.1 树5.1.1 树的定义5.1.2 树的逻辑结构5.1.3 树的表示5.2 二叉树5.2.1 二叉树的定义5.2.2 二叉树的性质5.2.3 二叉树的存储结构5.3 二叉树的遍历5.3.1 遍历的定义5.3.2 遍历算法5.3.3 遍历的应用5.4 树和森林5.4.1 树的存储结构5.4.2 森林和二叉树的转换5.4.3 数和森林的遍历5.5 哈夫曼树及其应用**5.5.1 最优二叉树(哈夫曼树)5.5.2 哈夫曼编码5.6 实训习题第6章 图6.1 图的定义及术语6.1.1 图的定义6.1.2 图的逻辑结构6.2 图的存储结构6.2.1 邻接矩阵表示法6.2.2 邻接表6.2.3 十字链表6.2.4 邻接多重表6.3 图的遍历6.3.1 深度优先搜索6.3.2 广度优先搜索6.4 最小生成树6.4.1 最小生成树6.4.2 普里姆算法6.4.3 克鲁斯卡尔算法6.5 有向无环图及应用6.5.1 拓扑排序6.5.2 关键路径6.6 最短路径**6.6.1 从一个源点到其他各点的最短路径6.6.2 每一对顶点之间的最短路径6.7 实训习题第7章 查找7.1 静态查找7.1.1 顺序表查找7.1.2 二分查找7.1.3 分块查找7.2 动态查找7.2.1 二叉排序树查找7.2.2 二叉排序树的插入7.2.3 Z.叉排序树的删除7.3 哈希表7.3.1 哈希表7.3.2 哈希函数的构造方法7.3.3 处理冲突的方法7.4 实训习题第8章 排序8.1 插入排序8.1.1 直接插入排序8.1.2 折半插入排序8.1.3 希尔排序8.1.4 应用举例8.2 交换排序8.2.1 冒泡排序8.2.2 快速排序8.3 选择排序8.3.1 直接选择排序8.3.2 树形选择排序8.3.3 堆排序8.3.4 应用举例8.4 归并排序**8.4.1 两个有序序列的归并8.4.2 2一路归并排序8.4.3 应用举例8.5 基数排序**8.5.1 多关键字排序8.5.2 链式基数排序8.5.3 应用举例8.6 各种排序方法的比较和选择8.6.1 排序方法的比较8.6.2 各种内部排序方法的选择8.7 实训习题参考文献 |
商品评论(0条)