- ISBN:9787122346391
- 装帧:平装-胶订
- 册数:暂无
- 重量:暂无
- 开本:16开
- 页数:229
- 出版时间:2019-11-01
- 条形码:9787122346391 ; 978-7-122-34639-1
本书特色
“数据结构”是计算机科学及相关学科的一门核心专业基础课,主要讨论各种数据结构在计算机中的存储表示及算法实现,是一门集技术性、理论性和实践性于一体的课程。本书综合了诸多院校的课程教学大纲以及教育部2018年考研大纲中《计算机学科专业基础综合考试大纲》进行编写,书中所有算法描述均采用标准C语言。教材内容安排合理,难易程度适中,讲解深入浅出。每部分内容都配备有对应的程序实例和丰富的习题,可有效增强读者对经典算法的理解和运用能力。全书共9章,内容包括绪论、线性表、栈和队列、串、数组和广义表、树和二叉树、图、查找、排序。
本书主要面向本科及大中专计算机及相关专业的在校学生和具有C语言程序设计基础的数据结构自学者,既可作为高校数据结构课程的教材,又可供从事软件设计和开发的技术人员参考。
内容简介
“数据结构”是计算机科学及相关学科的一门核心专业基础课,主要讨论各种数据结构在计算机中的存储表示及算法实现,是一门集技术性、理论性和实践性于一体的课程。本书综合了诸多院校的课程教学大纲以及教育部2018年考研大纲中《计算机学科专业基础综合考试大纲》进行编写,书中所有算法描述均采用标准C语言。教材内容安排合理,难易程度适中,讲解深入浅出。每部分内容都配备有对应的程序实例和丰富的习题,可有效增强读者对经典算法的理解和运用能力。全书共9章,内容包括绪论、线性表、栈和队列、串、数组和广义表、树和二叉树、图、查找、排序。 本书主要面向本科及大中专计算机及相关专业的在校学生和具有C语言程序设计基础的数据结构自学者,既可作为高校数据结构课程的教材,又可供从事软件设计和开发的技术人员参考。
目录
1.1 什么是数据结构 1
1.2 数据结构的概念及有关术语 1
1.3 算法和算法分析 5
习题 7
第2章 线性表 9
2.1 线性表的定义 9
2.2 线性表的基本运算 9
2.3 顺序存储结构线性表 10
2.3.1 线性表的顺序存储结构 10
2.3.2 顺序存储结构线性表的基本运算 11
2.3.3 顺序存储结构线性表的应用 15
2.4 链式存储结构线性表 20
2.4.1 单链表 20
2.4.2 循环链表 28
2.4.3 双向链表 29
2.4.4 静态链表 30
2.4.5 链式存储结构线性表的应用 31
2.5 小结 38
习题 38
第3章 栈和队列 42
3.1 栈 42
3.1.1 栈的定义及基本运算 42
3.1.2 顺序存储结构栈的基本运算 42
3.1.3 链式存储结构栈的基本运算 45
3.1.4 栈的应用实例 47
3.1.5 栈与递归 48
3.2 队列 50
3.2.1 队列的定义及基本运算 50
3.2.2 顺序存储结构队列的基本运算 50
3.2.3 链式存储结构队列的基本运算 53
3.2.4 队列的应用 55
3.3 小结 57
习题 58
第4章 串 61
4.1 串的概念及基本运算 61
4.1.1 串的基本概念 61
4.1.2 串的基本运算 62
4.2 顺序存储结构串的运算 63
4.2.1 串的定长顺序存储结构 63
4.2.2 定长顺序存储结构串的基本运算 64
4.3 串的堆分配存储结构及其运算 66
4.3.1 串的堆分配存储结构 66
4.3.2 堆分配存储结构串的运算 66
4.4 串的链式存储结构及基本运算 68
4.4.1 串的链式存储结构 68
4.4.2 链串的基本运算 69
4.5 串的模式匹配 70
4.5.1 简单模式匹配算法——BF算法 70
4.5.2 无回溯的模式匹配算法——KMP算法 72
*4.5.3 next函数的改进 77
4.6 小结 79
习题 79
第5章 数组和广义表 81
5.1 数组 81
5.1.1 数组的定义及逻辑结构 81
5.1.2 数组的存储结构 83
5.1.3 特殊矩阵的压缩存储 84
5.1.4 数组应用举例 88
5.2 广义表 91
5.2.1 广义表的定义 91
5.2.2 广义表的存储结构 93
5.2.3 广义表基本操作实现 94
5.2.4 广义表应用举例 97
5.3 小结 98
习题 99
第6章 树和二叉树 102
6.1 树的定义及有关术语 102
6.1.1 树的定义 102
6.1.2 常用术语 102
6.2 二叉树 103
6.2.1 二叉树的定义 103
6.2.2 二叉树的性质 105
6.2.3 二叉树的存储结构 105
6.2.4 二叉树的遍历 107
6.2.5 线索二叉树 113
6.2.6 哈夫曼树 117
6.3 树和森林 122
6.3.1 树的存储结构 122
6.3.2 树或森林与二叉树的转换 124
6.3.3 树和森林的遍历 125
6.4 小结 126
习题 126
第7章 图 130
7.1 图的定义及有关术语 130
7.2 图的存储结构 134
7.2.1 邻接矩阵 134
7.2.2 邻接表 137
7.2.3 十字链表 139
*7.2.4 邻接多重表 141
7.3 图的遍历 143
7.3.1 深度优先搜索 143
7.3.2 广度优先搜索 145
7.3.3 图的连通性 148
7.4 *小生成树 150
7.4.1 普里姆算法 150
7.4.2 克鲁斯卡尔算法 153
7.5 有向无环图及其应用 156
7.5.1 拓扑排序 156
7.5.2 关键路径 161
7.6 *短路径 166
7.6.1 单源*短路径 166
7.6.2 每一对顶点之间的*短路径 169
7.7 图的应用实例 172
7.8 小结 174
习题 175
第8章 查找 180
8.1 查找的有关概念 180
8.2 线性表的查找 181
8.2.1 顺序查找 181
8.2.2 二分查找 182
8.2.3 分块查找 184
8.3 树表的查找 185
8.3.1 二叉排序树 185
8.3.2 平衡二叉树 190
8.3.3 B-树 193
8.3.4 B 树 196
8.4 哈希查找 197
8.4.1 哈希表的概念及哈希函数的构造 197
8.4.2 哈希表的建立 199
8.4.3 冲突的处理方法 199
8.4.4 哈希查找的实现 201
8.5 小结 202
习题 203
第9章 排序 206
9.1 排序的有关概念 206
9.2 插入排序 207
9.2.1 直接插入排序 207
9.2.2 折半插入排序 208
9.2.3 希尔排序 209
9.3 交换排序 211
9.3.1 冒泡排序 211
9.3.2 快速排序 212
9.4 选择排序 214
9.4.1 简单选择排序 214
9.4.2 堆排序 216
9.5 归并排序 219
9.6 基数排序 221
9.7 多关键字排序 223
9.8 小结 224
习题 225
参考文献 229
作者简介
李晔,西安理工大学计算机科学与工程学院,副教授,姓名:李晔 年龄: 43 职称职务: 副教授 ;博士
工作院校(系):西安理工大学计算机科学与工程学院
讲授课程:C语言、数据结构、软件工程等
主要研究项目及领域:计算机应用技术李晔,西安理工大学计算机科学与工程学院,副教授,姓名:李晔 年龄: 43 职称职务: 副教授 ;博士
工作院校(系):西安理工大学计算机科学与工程学院
讲授课程:C语言、数据结构、软件工程等
主要研究项目及领域:计算机应用技术
作者简介:本科、硕士及博士所学专业均为计算机相
关专业,有二十多年从事计算机课程一线教学的经验,
长期主讲数据结构课程。
-
落洼物语
¥8.4¥28.0 -
当代中国政府与政治(新编21世纪公共管理系列教材)
¥33.6¥48.0 -
中国当代文学名篇选读
¥17.0¥53.0 -
中医基础理论
¥50.7¥59.0 -
长征记忆(八品)
¥9.5¥45.0 -
中医基础理论【中医 针灸专业用】
¥18.0¥25.0 -
北大人文课(平装)
¥12.2¥45.0 -
世界现代设计史-[第二版]
¥63.6¥120.0 -
宪法-第二版
¥20.3¥29.0 -
先进防伪技术
¥81.3¥98.0 -
当代中国政府与政治 第二版
¥57.8¥68.0 -
企业法务教程
¥34.8¥49.0 -
习近平新时代中国特色社会主义思想概论
¥18.2¥26.0 -
毛泽东思想和中国特色社会主义理论体系概论(2021年版)
¥8.5¥25.0 -
办公室工作实务(第4版)/黄海
¥27.8¥48.0 -
计算机操作系统教程(第4版)(清华大学计算机系列教材)
¥31.9¥49.0 -
习近平总书记教育重要论述讲义
¥13.3¥35.0 -
无人机概论
¥37.2¥59.0 -
(平装)北大必修课:北大口才课
¥18.2¥45.0 -
海商法-第四版
¥30.2¥48.0