第1章 绪论
1.1 什么是数据结构
1.1.1 数据和数据元素
1.1.2 数据对象和数据类型
1.1.3 数据结构
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 一个完整的例子(1)
1.3 线性表的链式存储
2.3.1 单链表的基本概念
2.3.2 单链表的基本操作
2.3.3 一个完整的例子(2)
2.3.4 循环链表
2.3.5 双向链表
2.3.6 双向循环链表
2.3.7 静态链表
2.4 线性表顺序存储与链式存储的比较
2.5 线性表的应用
2.5.1 约瑟夫问题
2.5.2 多项式加法
2.5.3 电文加密
本章小结
习题
第3章 栈和队列
3.1 栈
3.1.1 栈的定义与基本操作
3.1.2 顺序栈的存储结构和操作的实现
3.1.3 链栈的存储结构和操作的实现
3.2 栈的应用
3.2.1 数制转换
3.2.2 括号匹配问题
3.2.3 子程序的调用
3.2.4 利用一个栈逆置一个带头结点的单链表
3.3 队列
3.3.1 队列的定义与基本操作
3.3.2 链队列的存储结构和操作的实现
3.3.3 顺序队列的存储结构和操作的实现
3.4 队列的应用
3.4.1 打印杨辉三角形
3.4.2 迷宫问题:寻找一条从迷宫入口到出口的*短路径
本章小结
习题
第4章 串
4.1 串的定义和基本操作
4.1.1 串的定义
4.1.2 串的基本操作
4.2 串的表示和实现
4.2.1 串的定长顺序存储
4.2.2 串的堆存储结构
4.2.3 串的块链存储结构
4.3 串的模式匹配算法
4.3.1 基本的模式匹配算法
4.3.2 模式匹配的改进算法——KMP算法
本章小结
习题
第5章 多维数组和广义表
5.1 多维数组
5.1.1 多维数组的定义
5.1.2 数组的存储结构
……
第6章 树和二叉树
第7章 图
第8章 查找
第9章 排序
主要参考文献