目录
第1章绪论
1.1什么是数据结构
1.1.1数据结构的定义
1.1.2逻辑结构
1.1.3存储结构
1.1.4数据运算
1.1.5数据类型和抽象数据类型
1.2算法及其描述
1.2.1什么是算法
1.2.2算法设计的目标
1.2.3算法描述
1.3算法分析
1.3.1算法分析概述
1.3.2算法时间性能分析
1.3.3算法空间性能分析
1.4数据结构 算法=程序
1.4.1程序和数据结构
1.4.2算法和程序
1.4.3算法和数据结构
1.4.4数据结构的发展
本章小结
练习题1
上机实验题1
验证性实验
设计性实验
第2章线性表
2.1线性表及其逻辑结构
2.1.1线性表的定义
2.1.2线性表的抽象数据类型描述
2.2线性表的顺序存储结构
2.2.1线性表的顺序存储结构——顺序表
2.2.2顺序表基本运算的实现
2.3线性表的链式存储结构
2.3.1线性表的链式存储结构——链表
2.3.2单链表
2.3.3双链表
2.3.4循环链表
2.4线性表的应用
2.5有序表
2.5.1有序表的抽象数据类型描述
2.5.2有序表的存储结构及其基本运算算法
2.5.3有序表的归并算法
2.5.4有序表的应用
本章小结
练习题2
上机实验题2
验证性实验
设计性实验
综合性实验
第3章栈和队列
3.1栈
3.1.1栈的定义
3.1.2栈的顺序存储结构及其基本运算的实现
3.1.3栈的链式存储结构及其基本运算的实现
3.1.4栈的应用
3.2队列
3.2.1队列的定义
3.2.2队列的顺序存储结构及其基本运算的实现
3.2.3队列的链式存储结构及其基本运算的实现
3.2.4队列的应用举例
3.2.5双端队列
本章小结
练习题3
上机实验题3
验证性实验
设计性实验
综合性实验
第4章串
4.1串的基本概念
4.2串的存储结构
4.2.1串的顺序存储结构——顺序串
4.2.2串的链式存储结构——链串
4.3串的模式匹配
4.3.1BruteForce算法
4.3.2KMP算法
本章小结
练习题4
上机实验题4
验证性实验
设计性实验
综合性实验
第5章递归
5.1什么是递归
5.1.1递归的定义
5.1.2何时使用递归
5.1.3递归模型
5.1.4递归与数学归纳法
5.2栈和递归
5.2.1函数调用栈
5.2.2递归调用的实现
5.2.3递归到非递归的转换
5.3递归算法的设计
5.3.1递归算法设计的步骤
5.3.2基于递归数据结构的递归算法设计
5.3.3基于递归求解方法的递归算法设计
本章小结
练习题5
上机实验题5
验证性实验
设计性实验
综合性实验
第6章数组和广义表
6.1数组
6.1.1数组的基本概念
6.1.2数组的存储结构
6.1.3特殊矩阵的压缩存储
6.2稀疏矩阵
6.2.1稀疏矩阵的三元组表示
6.2.2稀疏矩阵的十字链表表示
6.3广义表
6.3.1广义表的定义
6.3.2广义表的存储结构
6.3.3广义表的运算
本章小结
练习题6
上机实验题6
验证性实验
设计性实验
综合性实验
第7章树和二叉树
7.1树的基本概念
7.1.1树的定义
7.1.2树的逻辑表示方法
7.1.3树的基本术语
7.1.4树的性质
7.1.5树的基本运算
7.1.6树的存储结构
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.5二叉树的遍历
7.5.1二叉树遍历的概念
7.5.2先序、中序和后序遍历递归算法
7.5.3先序、中序和后序遍历非递归算法
7.5.4层次遍历算法
7.6二叉树的构造
7.7线索二叉树
7.7.1线索二叉树的概念
7.7.2线索化二叉树
7.7.3遍历线索化二叉树
7.8哈夫曼树
7.8.1哈夫曼树概述
7.8.2哈夫曼树的构造算法
7.8.3哈夫曼编码
7.9用并查集求解等价问题
7.9.1什么叫并查集
7.9.2并查集的算法实现
本章小结
练习题7
上机实验题7
验证性实验
设计性实验
...