数据结构(第2版)
正版保障 假一赔十 可开发票
¥
39.98
8.2折
¥
49
全新
库存4件
作者田鲁怀 编著
出版社电子工业出版社
ISBN9787121276934
出版时间2015-12
装帧平装
开本16开
定价49元
货号23837120
上书时间2024-10-28
商品详情
- 品相描述:全新
- 商品描述
-
前言
再 版 前 言
本书是普通高等教育“十一五”***规划教材。本书较系统地介绍了程序设计中*常用的一些数据结构,如线性表、栈和队列、数组、串、树、图等;阐述各种数据结构的逻辑关系,讨论它们在计算机中的存储表示,以及在这些数据结构上的运算,并对其算法的复杂度进行简要的分析;另外,还介绍了程序设计中常用的各种排序和查找算法;每章中的“简单应用举例”,既是本章算法的综合应用,也可作为本章实训内容和课程设计的综合练习,具有很强的实用性和可操作性。
本书共分10章,内容包括:数据结构的概念,几种基本的线性结构(如线性表),栈和队列,串,几种非线性结构(如多维数组和广义表),树,图,常用的数据处理技术(如排序),查找,文件的存储结构和组织方法等。
本书既重视理论又重视实践,配有大量的习题和例题,解释颇为详细。全书采用C语言作为描述语言,并有详细的注释,书中全部程序均上机在TURBO C 2.0环境下进行验证并调试通过,同时给出部分程序的运行结果。
本书是作者在讲授“数据结构”和“高级程序设计语言”等课程20余年教学经验的基础上,集历年各种版本教材及作者多年来的备课笔记之精华,结合本科教学特点编写而成的。因此,学生通过相关内容的学习之后,可以直接使用书中算法或程序,有助于提高学生对所学知识的融会贯通和灵活应用,培养学生理论联系实际的良好学风。
本书第1版于2006年出版,经过近10年在上海交通大学、上海大学、海南大学、山东理工大学等多所高校的计算机及应用、微电子和信息工程、信息安全、计算机信息管理和自动控制等相关专业的多届学生中的使用,取得了较好的教学效果并获得了较高的评价。另外,本书还于2009年9月获得上海交通大学第12届优秀教材二等奖。
本书在再版过程中,山东理工大学电气与电子工程学院姜吉顺副教授对全书进行了全面修订并对书中的例题和习题以及书中的全部程序进行了验证和调试。
本书的再版不仅更正了原书中的疏漏和错误,也增补了一些细节;另外,在文字的叙述方面也进行了一些润色和删繁就简的工作。
此书的再版,首先要感谢电子工业出版社和冉哲编辑。因为目前的出版业与10年前已发生很大的变化,市场的竞争更加激烈、更为市场化。所以,对于出版社来说,决定一本书是否再版,是需要一定的眼光和需要承担一定风险的。但是,对于一个作者来说,能够在这种情况下,再版一本旧作,比完成一本新书更有成就感。因为,书作为科学的载体,其价值是需要用时间来检验的,只有经得起时间考验的作品,才是真正具有价值的。
原上海大学计算机学院院长张吉锋教授、原上海交通大学软件学院副院长侯文永教授对本书的内容以及实验和课程设计教学环节提出了很多宝贵的意见与建议;上海大学计算机工程与科学学院的曹旻、刘华两位老师,海南大学信息学院信息安全系的周晓谊老师在本书的使用和推介过程中做了大量的工作,并对此书的部分内容提出了一些建设性的修改意见,谨在此一并表示衷心的感谢。
本书主要作为全日制高等学校计算机应用专业、微电子和信息工程专业、计算机信息管理和经济信息管理类等专业普通本科学生的专业基础课教材;也可以作为上述专业高职高专学生的参考教材;还可以作为计算机等级考试的参考书,供广大从事计算机应用工作的管理人员和技术人员学习参考。
由于作者水平有限,书中缺点和错误在所难免,希望广大读者批评指正。
作 者
于上海交通大学
导语摘要
本书是普通高等教育“十一五”***规划教材。全书共10章,内容包括:数据结构的概念,几种基本的线性结构(如线性表),栈和队列,串,几种非线性结构(如多维数组和广义表),树,图,常用的数据处理技术(如排序),查找,文件的存储结构和组织方法等。在每章中都收集了难度各异的习题和例题,全书采用C语言作为算法描述语言,并有详细的注释,书中全部程序均上机验证并调试通过,同时给出部分程序的运行结果。各章中的“简单应用举例”,既是本章算法的综合应用,也可作为本章实训内容和课程设计的综合练习,全书有很强的实用性和可操作性。
本书可以作为全日制高等学校计算机应用专业、微电子和信息工程专业、计算机信息管理和经济信息管理类等专业普通本科学生的专业基础课教材,也可以作为上述专业高职高专学生的参考教材,还可以作为计算机等级考试的参考书,供广大从事计算机应用工作的管理人员和技术人员学习参考。
作者简介
田鲁怀,女,硕士学位,副教授职称。于1982年获中国石油大学(原华东石油学院)采油工程专业学士学位和1996年获上海大学(原上海工业大学)计算机应用专业硕士学位;先后在大学、高专学校和高职技术学院任教,分别于1989年和1996年获讲师和副教授职称。从1984年起,一直从事计算机专业的教学和科研工作。先后主讲了《数据结构》、《PASCAL语言程序设计》、《C语言程序设计》、《数据库原理及其应用》、《管理信息系统》等课程。
目录
第1章 概论1
1.1 概述1
1.2 数据结构的基本概念4
1.2.1 数据结构的基本术语4
1.2.2 数据的逻辑结构6
1.2.3 数据的存储结构8
1.3 算法性能分析与度量12
1.3.1 算法和算法的描述方法12
1.3.2 算法的特性14
1.3.3 算法设计的要求14
1.3.4 算法时间复杂度的分析与度量15
1.3.5 算法存储空间的分析与度量19
本章小结19
习题120
第2章 线性表23
2.1 线性表的定义及基本运算23
2.1.1 线性表的定义23
2.1.2 线性表的基本运算24
2.2 线性表的顺序存储结构及其运算25
2.2.1 线性表的顺序存储结构25
2.2.2 顺序表上的基本运算26
2.2.3 顺序表上插入和删除运算的时间分析30
2.2.4 顺序表的优点和缺点31
2.3 线性表的链接存储结构及其运算31
2.3.1 单链表31
2.3.2 单链表上的基本运算32
2.3.3 单链表上查找、插入和删除运算的时间分析40
2.3.4 循环链表40
2.3.5 双向链表43
2.4 顺序表和链表的比较46
2.5 线性表的简单应用举例47
本章小结62
习题263
第3章 栈和队列66
3.1 栈的基本概念66
3.2 栈的存储结构67
3.2.1 栈的顺序存储结构67
3.2.2 栈的链接存储结构68
3.2.3 栈的两种存储结构的比较69
3.2.4 多个顺序栈共享一个数组的存储空间69
3.3 栈的基本运算70
3.3.1 顺序存储结构上顺序栈的运算实现71
3.3.2 链接存储结构上链栈的运算实现72
3.4 栈的简单应用举例73
3.4.1 栈在递归过程中的作用73
3.4.2 栈的几个简单应用实例76
3.5 队列的基本概念81
3.6 队列的存储结构82
3.6.1 队列的顺序存储结构82
3.6.2 顺序存储的循环队列84
3.6.3 队列的链接存储结构85
3.7 队列的基本运算86
3.7.1 顺序存储结构上顺序队列的运算实现86
3.7.2 顺序存储结构上循环队列的运算实现87
3.7.3 链接存储结构上链队列的运算实现89
3.8 队列的简单应用举例91
本章小结97
习题398
第4章 串100
4.1 串的基本概念100
4.2 串的存储结构101
4.2.1 串的顺序存储结构101
4.2.2 串的链接存储结构103
4.3 串的基本运算及实现105
4.3.1 串的基本运算105
4.3.2 顺序串上基本运算的实现106
4.3.3 链串上基本运算的实现108
4.4 串的模式匹配运算112
4.4.1 BF模式匹配算法112
4.4.2 BM模式匹配算法115
4.4.3 KMP模式匹配算法117
4.5 串的简单应用举例124
本章小结131
习题4131
第5章 数组和广义表133
5.1 数组的概念和存储133
5.1.1 数组的概念133
5.1.2 数组的存储结构134
5.2 特殊矩阵的压缩存储137
5.2.1 对称矩阵的压缩存储137
5.2.2 三角矩阵的压缩存储138
5.2.3 对角矩阵的压缩存储139
5.3 稀疏矩阵的压缩存储141
5.3.1 稀疏矩阵的三元组表示141
5.3.2 稀疏矩阵的十字链表表示148
5.3.3 稀疏矩阵的简单应用举例152
5.4 广义表157
5.4.1 广义表的基本概念157
5.4.2 广义表的链接存储结构158
5.4.3 广义表的基本运算161
5.4.4 广义表的简单应用举例166
本章小结167
习题5168
第6章 树170
6.1 树的基本概念170
6.1.1 树的定义170
6.1.2 树的基本术语172
6.2 二叉树174
6.2.1 二叉树的概念174
6.2.2 二叉树的基本性质176
6.2.3 二叉树的存储结构177
6.3 二叉树的运算180
6.3.1 二叉树的遍历180
6.3.2 二叉树的建立185
6.3.3 二叉树的其他运算举例187
6.4 线索二叉树192
6.4.1 线索二叉树的概念192
6.4.2 二叉树的中序线索化193
6.4.3 线索二叉树的遍历和插入运算195
6.5 树和森林198
6.5.1 树的存储结构198
6.5.2 树和森林与二叉树的转换201
6.5.3 树的遍历205
6.5.4 森林的遍历206
6.6 哈夫曼树及其应用207
6.6.1 哈夫曼树的基本概念207
6.6.2 哈夫曼树的构造及实现208
6.6.3 哈夫曼编码211
6.6.4 哈夫曼译码215
6.6.5 哈夫曼树在编码问题中的完整程序216
本章小结218
习题6219
第7章 图222
7.1 图的基本概念222
7.1.1 图的实际背景222
7.1.2 图的定义223
7.1.3 图的基本术语224
7.2 图的存储结构227
7.2.1 邻接矩阵表示法227
7.2.2 邻接表表示法231
7.3 图的遍历234
7.3.1 连通图的深度优先搜索遍历235
7.3.2 连通图的广度优先搜索遍历237
7.3.3 非连通图的遍历240
7.3.4 连通图和非连通图的建立与遍历运算实例241
7.4 生成树和*小生成树243
7.4.1 生成树和*小生成树的概念244
7.4.2 Kruskal算法245
7.4.3 Prim算法248
7.5 *短路径250
7.5.1 *短路径的概念250
7.5.2 单源*短路径252
7.5.3 所有顶点对之间的*短路径255
7.6 AOV网和拓扑排序260
7.6.1 AOV网和拓扑排序的概念260
7.6.2 拓扑排序算法261
7.7 AOE网和关键路径265
7.7.1 AOE网和关键路径的概念265
7.7.2 关键路径的确定267
7.8 图的简单应用举例269
本章小结277
习题7278
第8章 排序281
8.1 排序的基本概念281
8.2 插入排序284
8.2.1 直接插入排序284
8.2.2 希尔排序286
8.3 交换排序288
8.3.1 冒泡排序288
8.3.2 快速排序291
8.4 选择排序294
8.4.1 直接选择排序294
8.4.2 堆排序295
8.5 归并排序302
8.5.1 两个相邻有序表的一次归并过程303
8.5.2 一趟归并排序过程303
8.5.3 二路归并排序304
8.6 各种内排序方法的比较和选择305
8.6.1 各种内排序方法的总结305
8.6.2 各种内排序方法的比较305
8.6.3 排序方法的选择306
8.7 排序的简单应用举例307
本章小结311
习题8312
第9章 查找315
9.1 查找的基本概念315
9.2 线性表的查找316
9.2.1 顺序查找316
9.2.2 二分查找317
9.2.3 分块查找320
9.3 树表的查找323
9.3.1 二叉排序树323
9.3.2 平衡的二叉排序树330
9.3.3 B-树335
9.4 散列表的查找342
9.4.1 散列表的概念342
9.4.2 散列函数的构造方法344
9.4.3 处理冲突的方法347
9.4.4 散列表的运算351
9.4.5 散列表的查找及分析355
9.5 查找的简单应用举例357
本章小结362
习题9363
第10章 文件365
10.1 文件的基本概念365
10.2 顺序文件367
10.3 索引文件368
10.4 索引顺序文件370
10.4.1 ISAM文件370
10.4.2 VSAM文件373
10.5 散列文件375
10.6 多关键字文件376
10.6.1 多重表文件376
10.6.2 倒排文件377
本章小结378
习题10379
参考文献380
内容摘要
本书是普通高等教育“十一五”***规划教材。全书共10章,内容包括:数据结构的概念,几种基本的线性结构(如线性表),栈和队列,串,几种非线性结构(如多维数组和广义表),树,图,常用的数据处理技术(如排序),查找,文件的存储结构和组织方法等。在每章中都收集了难度各异的习题和例题,全书采用C语言作为算法描述语言,并有详细的注释,书中全部程序均上机验证并调试通过,同时给出部分程序的运行结果。各章中的“简单应用举例”,既是本章算法的综合应用,也可作为本章实训内容和课程设计的综合练习,全书有很强的实用性和可操作性。
本书可以作为全日制高等学校计算机应用专业、微电子和信息工程专业、计算机信息管理和经济信息管理类等专业普通本科学生的专业基础课教材,也可以作为上述专业高职高专学生的参考教材,还可以作为计算机等级考试的参考书,供广大从事计算机应用工作的管理人员和技术人员学习参考。
主编推荐
田鲁怀,女,硕士学位,副教授职称。于1982年获中国石油大学(原华东石油学院)采油工程专业学士学位和1996年获上海大学(原上海工业大学)计算机应用专业硕士学位;先后在大学、高专学校和高职技术学院任教,分别于1989年和1996年获讲师和副教授职称。从1984年起,一直从事计算机专业的教学和科研工作。先后主讲了《数据结构》、《PASCAL语言程序设计》、《C语言程序设计》、《数据库原理及其应用》、《管理信息系统》等课程。
— 没有更多了 —
以下为对购买帮助不大的评价