C语言数据结构精讲

 
1.1 数据结构的概念—为什么要学习数据结构
1.1数据结构的概念—有关概念和术语
1.1数据结构的概念—数据结构课程的内容
1.2抽象数据类型
1.3算法和算法分析
2.1线性表的逻辑结构
2.2线性表的顺序存储及运算—顺序表
2.2线性表的顺序存储及运算—顺序表上的基本运算
2.2线性表的顺序存储及运算—顺序表应用举例
2.3线性表的链式存储和运算—单链表
2.3线性表的链式存储和运算—单链表基本运算
2.3线性表的链式存储和运算—循环链表
2.3线性表的链式存储和运算—双向链表
2.3线性表的链式存储和运算—静态链表
2.3线性表的链式存储和运算—单链表应用举例
2.4顺序表和链表的比较
3.1 栈—栈的定义及基本运算
3.1 栈—栈的存储实现和运算实现
3.2 栈的应用举例
3.3 队列—队列的定义及基本运算
3.3 队列—队列的存储实现及运算实现
3.4 队列应用举例
4.1 串及其基本运算
4.2 串的定长顺序存储及基本运算
4.3 串的堆存储结构—串名的存储映象
4.3 串的堆存储结构—堆存储结构
4.3 串的堆存储结构—基于堆结构的基本运算
5.1 多维数组
5.2 特殊矩阵的压缩存储—对称矩阵
5.2 特殊矩阵的压缩存储—三角矩阵
5.2 特殊矩阵的压缩存储—带状矩阵
5.3 稀疏矩阵—稀疏矩阵的三元组表存储
5.3 稀疏矩阵—稀疏矩阵的十字链表存储
5.4 广义表—广义表的定义和基本运算
5.4 广义表—广义表的存储
5.4 广义表—广义表基本操作的实现
6.1 二叉树的定义与性质
6.2 基本操作与存储—二叉树的存储
6.2 基本操作与存储—二叉树的基本操作及实现
6.3 二叉树的遍历—二叉树的遍历方法及递归实现
6.3 二叉树的遍历—二叉树遍历的非递归实现
6.3 二叉树的遍历—由遍历序列恢复二叉树
6.3 二叉树的遍历—不用栈的二叉树遍历的非递归方法
6.4 线索二叉树—线索二叉树的定义及结构
6.4 线索二叉树—线索二叉树的基本操作实现
6.5 二叉树的应用—二叉树遍历的应用
6.5 二叉树的应用—最优二叉树(哈夫曼树)
7.1 树的概念与表示
7.2 树的基本操作与存储
7.3 树、森林与二叉树的转换
7.4 树和森林的遍历
7.5 树的应用
8.1 图的基本概念
8.2 图的存储表示—邻接矩阵
8.2 图的存储表示—邻接表
8.2 图的存储表示—十字链表
8.2 图的存储表示—邻接多重表
8.3 图的遍历
8.4 图的连通性—无向图的连通性
8.4 图的连通性—有向图的连通性
8.4 图的连通性—生成树和生成森林
8.4 图的连通性—关节点和重连通分量
8.5 最小生成树—最小生成树的基本概念
8.5 最小生成树—构造最小生成树的Prim算法
8.5 最小生成树—构造最小生成树的Kruskal算法
8.6 最短路径—从一个源点到其它各点的最短路径
8.6 最短路径—每一对顶点之间的最短路径
8.7 有向无环图及其应用—有向无环图的概念
8.7 有向无环图及其应用—AOV网与拓扑排序
9.1 查找的基本概念与术语
9.2 静态查找表—静态查找表结构
9.2 静态查找表—顺序查找
9.2 静态查找表—有序表的折半查找
9.2 静态查找表—有序表的插值查找和斐波那契查找
9.2 静态查找表—分块查找
9.3.1动态查找表—二叉排序树
9.3.1动态查找表—平衡二叉树(AVL树)
9.3.1动态查找表—B-树和B+树
9.4 哈希表查找(杂凑法)—哈希表与哈希方法
9.4 哈希表查找(杂凑法)—常用的哈希函数
9.4 哈希表查找(杂凑法)—处理冲突的方法
9.4 哈希表查找(杂凑法)—哈希表的查找分析
10.1 排序的基本概念
10.2插入排序—直接插入排序
10.2插入排序—折半插入排序
10.2插入排序—表插入排序
10.2插入排序—希尔排序(Shell’s Sort)
10.3 交换排序—冒泡排序(Bubble Sort)
10.3 交换排序—快速排序
10.4选择排序—简单选择排序
10.4选择排序—树形选择排序
10.4选择排序—堆排序(Heap Sort)
10.5二路归并排序
10.6基数排序
10.7.1 外排序—外部排序的方法
10.7.1 外排序—多路平衡归并的实现