第1章 绪论
1.1 基本概念和术语
案例1.1 数据模型的确定
1.2 算法和算法评价
案例1.2 矩阵乘法算法的时间复杂度分析
本章小结
习题1
第2章 线性表
2.1 线性表的顺序存储
案例2.1 模拟集合的基本运算
2.2 线性表的链式存储
案例2.2 一元多项式的加法运算
案例2.3 采用循环链表模拟约瑟夫(Josephus)问题
本章小结
习题2
第3章 栈和队列
3.1 栈
案例3.1 数制转换(十进制数转换为二、八、十六进制数)
案例3.2 后缀表达式的求值
3.2 栈与递归
案例3.3 迷宫问题
3.3 队列
案例3.4 农夫过河问题
本章小结
习题3
第4章 串、多维数组和广义表
4.1 串
案例4.1 模拟“天书密码”的生成和破解
案例4.2 无回溯的模式匹配
4.2 多维数组和广义表
案例4.3 稀疏矩阵的转置
本章小结
习题4
第5章 树和二叉树
5.1 树和二叉树的存储表示
案例5.1 完全二叉树的基本运算
5.2 树和二叉树的遍历
案例5.2 表达式树的构造及输出
5.3 线索二叉树
案例5.3 中序线索二叉树及其遍历
5.4 哈夫曼树及其应用
案例5.4 哈夫曼编码器
本章小结
习题5
第6章 图
6.1 图的存储和遍历
案例6.1 图的连通性判定
6.2 最小生成树和最短路径
案例6.2 局域网络布线问题
6.3 有向无环图及其应用
案例6.3 教学计划的编制
本章小结
习题6
第7章 查找
7.1 线性表的查找
案例7.1 学生信息表的分块查找
7.2 树表的查找
案例7.2 借助二叉排序树实现单词统计
7.3 散列表的查找
案例7.3 散列表的双散列探测查找
本章小结
习题7
第8章排序
8.1 插入排序
案例8.1 希尔排序
8.2 交换排序
案例8.2 双向冒泡排序
8.3 选择排序
案例8.3 堆排序
8.4 归并排序和基数排序
案例8.4 链式基数排序
本章小结
习题8
第9章 综合实训
实训1 停车场管理
实训2 五叉路口交通灯的管理系统
本章小结
习题9
附录常用数据结构的类型定义
参考文献