第1章 概述
1.1 什么是数据结构
1.2 数据结构的相关概念和术语
1.3 算法
1.3.1 算法的概念
1.3.2 算法的特性
1.3.3 用类C语言描述算法
1.3.4 算法的度量
1.4 本章小结
习题1
第2章 线性表及线性表的顺序存储
2.1 线性表的定义
2.1.1 线性表的实例
2.1.2 线性表的定义和基本操作
2.1.3 线性表的数学定义和逻辑图
2.2 线性表的顺序存储结构(顺序表)
2.3 顺序表基本算法实现
2.3.1 线性表内容与线性表长度分别存储的算法实现
2.3.2 线性表内容与线性表长度存储在一个结构体中的算法实现
2.3.3 线性表中的元素是字符串的算法实现
2.4 顺序表的查找
2.4.1 顺序查找
2.4.2 二分查找
2.4.3 顺序查找与二分查找的效率分析
2.5 插入与删除操作的效率分析
2.5.1 在顺序表的第i个位置(逻辑位置)插入一个元素
2.5.2 插入算法的移动次数
2.6 顺序表应用举例
2.7 本章小结
习题2
第3章 线性表的链式存储
3.1 线性表的链式存储结构
3.1.1 为什么要使用链式存储结构
3.1.2 单链表的数据定义
3.2 基于单链表的算法实现
3.2.1 单链表的基本算法实现
3.2.2 单链表中插入运算的进一步讨论
3.3 单链表应用举例
3.4 链式存储的其他方法
3.5 基于带表头结点的单循环链表算法实现
3.5.1 带表头结点的单循环链表的基本算法实现
3.5.2 带表头结点的单循环链表的应用举例
3.5.3 带表头结点与不带表头结点的单循环链表的比较
3.6 双向链表基本算法实现
3.7 顺序存储方式与链式存储方式的比较
3.8 本章小结
习题3
第4章 哈希表与索引表
4.1 查找的基本概念
4.2 哈希表
4.2.1 哈希表的基本概念
4.2.2 冲突的产生
4.2.3 可以选择的哈希函数
4.2.4 解决冲突的方法
4.2.5 基本算法的实现
4.2.6 哈希表存储方法的性能分析
4.2.7 哈希表应用举例
4.3 索引表
4.3.1 索引表的构成
4.3.2 索引表的查找
4.3.3 分块查找
4.4 各种查找算法的效率分析
4.5 本章小结
习题4
第5章 栈与队列
第6章 内排序
第7章 树与二叉树
第8章 图
参考文献