新書推薦:
《
漫画三国一百年
》
售價:HK$
55.2
《
希腊文明3000年(古希腊的科学精神,成就了现代科学之源)
》
售價:HK$
82.8
《
粤行丛录(岭南史料笔记丛刊)
》
售價:HK$
80.2
《
岁月待人归:徐悲鸿自述人生艺术
》
售價:HK$
61.4
《
女人的中国医疗史:汉唐之间的健康照顾与性别
》
售價:HK$
103.8
《
资治通鉴熊逸版:第四辑
》
售價:HK$
470.8
《
中国近现代名家精品——项维仁:工笔侍女作品精选
》
售價:HK$
66.1
《
宋瑞驻村日记(2012-2022)
》
售價:HK$
115.6
|
編輯推薦: |
本书是在多年讲授数据结构讲义的基础上整理而成的,内容包括数据结构概述、线性表、栈和队列、串、数组与广义表、二叉树、树与森林、图、查找、排序等知识点。全书共分10章,各章都配有一定数量的习题,方便读者巩固所学知识。
|
內容簡介: |
本书是在多年讲授数据结构讲义的基础上整理而成的,内容包括数据结构概述、线性表、栈和队列、串、数组与广义表、二叉树、树与森林、图、查找、排序等知识点。全书共分10章,各章都配有一定数量的习题,方便读者巩固所学知识。
本书的特点是:除了阐述“数据结构”学科的基本概念、基本理论和基本方法以外,特别强调数据建模和求解算法的思想方法,重点培养学生的抽象建模能力、算法设计能力、算法的语言描述能力、数据结构的应用创新能力。
本书的编写坚持语言流畅、通俗易懂的指导思想,力求概念表述严谨,算法分析深入浅出,适合作为高校计算机及相关专业的教材使用,同时也可作为自学参考书。
|
目錄:
|
第1章 数据结构概述
1.1 数据结构研究的问题
1.1.1 计算机解决实际问题的一般步骤
1.1.2 数据结构学科概念及其所研究的内容
1.1.3 数据结构的建模举例
1.2 数据结构的有关概念
1.2.1 数据的有关概念
1.2.2 数据结构的相关术语
1.2.3 数据类型的概念
1.3 算法与算法性能分析
1.3.1 算法概念及特点
1.3.2 算法的设计要求
1.3.3 算法的性能分析
1.4 数据结构与算法描述工具简介
习题
第2章 线性表
2.1 线性表的类型定义
2.1.1 线性表的概念与逻辑结构
2.1.2 线性表的ADT定义
2.2 线性表的顺序存储结构及其算法实现
2.2.1 线性表的顺序存储结构
2.2.2 顺序表的基本算法实现
2.2.3 顺序表应用举例
2.3 线性表的链式存储与算法实现
2.3.1 单链表存储结构
2.3.2 单链表基本运算的实现
2.3.3 双向链表
2.3.4 循环链表
2.3.5 静态链表
2.3.6 单链表应用举例
习题
第3章 栈和队列
3.1 栈
3.1.1 栈的概念及ADT定义
3.1.2 栈的存储表示与算法实现
3.2 栈的应用举例
3.3 队列
3.3.1 队列的定义及ADT定义
3.3.2 队列的存储结构及算法实现
习题
第4章 串
4.1 串的概念及其ADT定义
4.1.1 串的基本概念及术语
4.1.2 串的ADT定义
4.2 串的定长顺序存储及基本运算
4.2.1 串的定长顺序存储表示及其算法实现
4.2.2 定长顺序串的基本运算
4.3 串的堆存储结构及算法实现
4.3.1 串的堆存储结构
4.3.2 堆串的算法实现
4.4 串的匹配算法
4.4.1 简单匹配算法
4.4.2 KMP匹配算法
4.4.3 串的其他存储映像
习题
第5章 数组与广义表
5.1 数组
5.1.1 数组类型与存储结构
5.1.2 数组的内存映像
5.2 特殊矩阵的压缩存储
5.2.1 对称矩阵
5.2.2 三角矩阵
5.2.3 带状矩阵
5.3 稀疏矩阵
5.3.1 稀疏矩阵的三元组存储结构与矩阵的转置和乘法
5.3.2 稀疏矩阵的十字链表存储与矩阵的加法和减法
5.4 广义表
5.4.1 广义表的概念与ADT定义
5.4.2 广义表的存储
5.4.3 广义表的基本操作算法
5.4.4 广义表的应用举例
习题
第6章 二叉树
6.1 二叉树的概念与性质
6.1.1 二叉树的定义及相关术语
6.1.2 二叉树的性质
6.2 二叉树的存储结构与创建算法
6.2.1 二叉树的存储结构
6.2.2 二叉树的创建算法
6.3 二叉树的遍历算法及其应用
6.3.1 二叉树的递归遍历算法
6.3.2 二叉树的非递归遍历算法
6.3.3 二叉树遍历算法的应用
6.3.4 由遍历序列恢复二叉树
6.4 线索二叉树
6.4.1 线索二叉树的定义及结构
6.4.2 线索二叉树的基本操作算法
6.5 哈夫曼树
6.5.1 哈夫曼树的概念与构造算法
6.5.2 哈夫曼的应用
习题
第7章 树与森林
7.1 树的概念与ADT定义
7.1.1 树的定义及其相关术语
7.1.2 树的ADT定义
7.1.3 树与森林的性质
7.2 树与森林的存储结构
7.3 树、森林与二叉树的转换
7.3.1 树转换成二叉树
7.3.2 森林转换成二叉树
7.3.3 二叉树转换成树或森林
7.4 树和森林的遍历
7.4.1 树的遍历
7.4.2 森林的遍历
7.5 树的应用
7.5.1 集合的表示
7.5.2 求等价类问题
习题
第8章 图
8.1 图的基本概念与类型定义
8.1.1 图的概念与相关术语
8.1.2 图的ADT定义
8.2 图的存储表示与创建算法
8.2.1 邻接矩阵存储表示与创建算法
8.2.2 邻接表存储表示与创建算法
8.2.3 有向图的十字链表存储表示与创建算法
8.2.4 无向图的邻接多重表存储表示
8.3 图的遍历算法
8.3.1 深度优先搜索算法
8.3.2 广度优先搜索算法
8.4 图的连通性
8.4.1 无向图的连通性
8.4.2 有向图的连通性
8.4.3 生成树和生成森林
8.4.4 关结点和重连通分量
8.5 最小生成树
8.5.1 最小生成树的概念
8.5.2 构造最小生成树的Prim算法
8.5.3 构造最小生成树的Kruskal算法
8.6 最短路径问题
8.6.1 从一个源点到其他各顶点的最短路径
8.6.2 每一对顶点之间的最短路径
8.7 有向无环图及其应用
8.7.1 有向无环图的概念
8.7.2 AOV网与拓扑排序
8.7.3 AOE网与关键路径
习题
第9章 查找
9.1 查找概述
9.1.1 查找表的有关概念
9.1.2 查找表的类型说明
9.1.3 查找算法的性能分析
9.2 静态查找表
9.2.1 静态查找表的结构
9.2.2 顺序表的查找
9.2.3 有序表的查找
9.2.4 有序表的其他查找方法
9.2.5 静态树表的查找
9.3 动态查找表
9.3.1 二叉排序树
9.3.2 平衡二叉树AVL树
9.3.3 B-树和B+树
9.4 哈希表查找
9.4.1 哈希表与哈希方法
9.4.2 哈希函数的常用构造方法
9.4.3 处理冲突的方法
9.4.4 哈希表的查找分析
习题
第10章 排序
10.1 基本概念
10.2 插入排序
10.2.1 直接插入排序
10.2.2 折半插入排序
10.2.3 表插入排序
10.2.4 希尔排序
10.3 交换排序
10.3.1 冒泡排序
10.3.2 快速排序
10.4 选择排序
10.4.1 简单选择排序
10.4.2 树形选择排序
10.4.3 堆排序heap sort
10.5 二路归并排序
10.6 基数排序
10.6.1 多关键字排序
10.6.2 链式基数排序
10.6.3 计数排序
10.7 各种排序算法的比较
10.8 外排序
10.8.1 外部排序的方法
10.8.2 多路平衡归并的实现
习题
参考文献
|
|