- ISBN:9787121402616
- 装帧:一般胶版纸
- 册数:暂无
- 重量:暂无
- 开本:26cm
- 页数:302页
- 出版时间:2021-01-01
- 条形码:9787121402616 ; 978-7-121-40261-6
本书特色
本书是作者积多年讲授与研究“数据结构”课程的经验并结合指导学生上机的实践编写而成的。作者力求从实践的角度,帮助读者深入学习、理解和掌握数据结构知识并能灵活应用这些知识。本书涵盖了“数据结构”课程涉及的上机实践内容,并且列举了理论知识对应的算法实现程序,这些程序都已在VC++6.0环境下调试通过。 本书可以配合目前各类数据结构(C语言)教材使用,不仅可以实现教学与上机的衔接,还可以帮助读者开拓学习和应用视野。本书程序设计内容丰富、编程方法全面,因此可以作为计算机应用人员的参考书。
内容简介
本书是作者积多年讲授与研究“数据结构”课程的经验并结合指导学生上机的实践编写而成的。作者力求从实践的角度,帮助读者深入学习、理解和掌握数据结构知识并能灵活应用这些知识。本书涵盖了“数据结构”课程涉及的上机实践内容,并且列举了理论知识对应的算法实现程序,这些程序都已在VC++6.0环境下调试通过。 本书可以配合目前各类数据结构(C语言)教材使用,不仅可以实现教学与上机的衔接,还可以帮助读者开拓学习和应用视野。本书程序设计内容丰富、编程方法全面,因此可以作为计算机应用人员的参考书。
目录
目录
第1章 线性表 1
1.1 线性表的定义 1
1.2 线性表的顺序存储――顺序表 1
1.3 线性表的链式存储 2
第2章 栈和队列 23
2.1 栈 23
2.2 队列 25
第3章 串 39
第4章 数组与广义表 56
4.1 数组 56
4.2 特殊矩阵 58
4.3 稀疏矩阵 58
4.4 广义表 61
第5章 树与二叉树 76
5.1 树 76
5.2 二叉树 76
5.3 二叉树的性质 78
5.4 二叉树的存储结构 78
5.5 二叉树的遍历方法 80
5.6 线索二叉树 80
5.7 哈夫曼树 82
5.8 哈夫曼编码 84
第6章 图 115
6.1 图的概念 115
6.2 图的基本术语 116
6.3 邻接矩阵 118
6.4 邻接表 120
6.5 图的遍历 121
6.6 图的连通性问题 121
6.7 生成树与*小生成树 122
6.8 *短路径 123
6.9 AOV网与拓扑排序 124
6.10 AOE网与关键路径 126
第7章 查找 167
7.1 顺序查找 167
7.2 有序表的查找 168
7.3 二叉排序树与平衡二叉树 168
7.4 哈希表与哈希方法 169
7.5 哈希函数的构造方法 169
7.6 处理冲突的方法 170
第8章 排序 196
8.1 插入排序 196
8.2 交换排序 197
8.3 选择排序 198
8.4 归并排序 200
8.5 基数排序 200
第9章 数据结构算法应用 228
9.1 顺序表的应用 228
9.1.1 顺序表的逆置 228
9.1.2 将两个升序的顺序表A和B合并为一个升序的顺序表C 229
9.1.3 单链表的逆置 231
9.1.4 将递增有序的单链表A和B合并为递减有序的单链表C 232
9.1.5 删除单链表中值相同的节点 234
9.1.6 按递增次序输出单链表中各节点的数据值 235
9.1.7 用单链表实现约瑟夫(Josephus)问题 237
9.2 栈和队列的应用 239
9.2.1 用栈判断给定的字符序列是否为回文 239
9.2.2 循环链表中只有队尾指针的入队和出队算法 240
9.2.3 算术表达式中的括号匹配 242
9.2.4 将队列中所有元素逆置 245
9.2.5 用两个栈模拟一个队列 248
9.2.6 用栈实现汉诺塔(Tower of Hanoi)问题非递归解法 250
9.3 串的应用 252
9.3.1 将串s1中连续的字符用串s2替换 252
9.3.2 计算一个子串在串中出现的次数 253
9.3.3 输出长度*大的等值子串 255
9.3.4 将链串s中首次与链串t匹配的子串逆置 256
9.4 数组与广义表的应用 258
9.4.1 将所有奇数存放到数组的前半部分,所有偶数存放到数组的后半部分 258
9.4.2 求字符数组中连续相同字符构成的子序列长度 259
9.4.3 求广义表的表头和表尾 260
9.4.4 另一种广义表生成方法 264
9.5 树与二叉树的应用 268
9.5.1 交换二叉树的左子树和右子树 268
9.5.2 统计二叉树叶子节点个数的非递归算法的实现 269
9.5.3 判定一棵二叉树是否为完全二叉树 271
9.5.4 求二叉树中**条*长的路径并输出此路径上各节点的值 273
9.6 图的应用 276
9.6.1 邻接矩阵转换为邻接表 276
9.6.2 深度优先搜索的非递归算法实现 278
9.6.3 求无向连通图中距顶点v0路径长度为k的所有节点 280
9.6.4 用深度优先搜索对图中所有顶点进行拓扑排序 283
9.7 查找的应用 286
9.7.1 判断一棵二叉树是否为二叉排序树 286
9.7.2 另一种平衡二叉树的生成方法 288
9.8 排序的应用 293
9.8.1 用双向循环链表表示的插入排序 293
9.8.2 双向冒泡排序 295
9.8.3 双向选择排序 297
9.8.4 单链表存储下的选择排序 298
9.8.5 归并排序的迭代算法实现 300
参考文献 303
作者简介
黑新宏,男,博士,教务处处长,1994.9-1998.7 西安理工大学 计算机及其应用 学士;2000.9-2003.4 西安理工大学 计算机应用技术 硕士;2005.4-2008.3 日本大学 理工学部 计算机科学 博士;2008.7-2013.11 西安理工大学计算机科学与工程学院 副教授;2013.12至今 西安理工大学计算机科学与工程学院 教授。2018.1至今,西安理工大学计算机学院教授、院长。
-
有限与无限的游戏:一个哲学家眼中的竞技世界
¥37.4¥68.0 -
全图解零基础word excel ppt 应用教程
¥12.0¥48.0 -
机器学习
¥59.4¥108.0 -
深度学习的数学
¥43.5¥69.0 -
智能硬件项目教程:基于ARDUINO(第2版)
¥37.7¥65.0 -
硅谷之火-人与计算机的未来
¥14.3¥39.8 -
元启发式算法与背包问题研究
¥38.2¥49.0 -
AI虚拟数字人:商业模式+形象创建+视频直播+案例应用
¥62.9¥89.8 -
UNIX环境高级编程(第3版)
¥164.9¥229.0 -
剪映AI
¥52.8¥88.0 -
深度学习高手笔记 卷2:经典应用
¥90.9¥129.8 -
纹样之美:中国传统经典纹样速查手册
¥77.4¥109.0 -
UG NX 12.0数控编程
¥24.8¥45.0 -
MATLAB计算机视觉与深度学习实战(第2版)
¥90.9¥128.0 -
界面交互设计理论研究
¥30.8¥56.0 -
UN NX 12.0多轴数控编程案例教程
¥25.8¥38.0 -
微机组装与系统维护技术教程(第二版)
¥37.8¥43.0 -
明解C语言:实践篇
¥62.9¥89.8 -
Linux服务器架设实战(Linux典藏大系)
¥84.5¥119.0 -
PREMIERE PRO 2023全面精通:视频剪辑+颜色调整+转场特效+字幕制作+案例实战
¥69.3¥99.0