注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络数据库数据结构

数据结构

数据结构

定 价:¥45.00

作 者: 邵斌,叶星火,樊艳芬,朱绍军 著
出版社: 清华大学出版社
丛编项: 高等学校计算机基础教育规划教材
标 签: 暂缺

购买这本书可以去


ISBN: 9787302493327 出版时间: 2018-08-01 包装: 平装
开本: 16 页数: 262 字数:  

内容简介

  本书结合编者多年教学经验,全面系统地介绍了数据结构的基本概念和知识,条理清晰、重点突出,内容循序渐进、深入浅出,既注重理论知识的讲解,又注重算法设计的训练,突出了理论性与实用性。全书共分9章,第1章作为全书的综述和基础,介绍了数据结构、算法的相关概念和算法分析方法等,其后各章分别讨论了线性表、栈和队列、串、多维数组和广义表、树和二叉树、图、数据结构的定义、表示和实现,最后两章介绍了查找和内部排序的各种方法。在重点章节中,还结合精心编写的应用实例,介绍了应用数据结构和算法解决实际问题及进行程序设计的方法,增强了读者对基本知识的理解与掌握,有利于提高分析问题的能力和程序设计的能力。全书采用C语言作为数据结构和算法的描述语言。 本书可作为高等学校计算机类、信息类及相近专业本科生的数据结构课程教材,也可供从事计算机软件开发和工程应用的人员学习和参考。

作者简介

暂缺《数据结构》作者简介

图书目录

第1章概论1
1.1什么是数据结构1
1.1.1数据和数据元素1
1.1.2数据对象与数据类型2
1.1.3数据结构2
1.2为什么要学习数据结构5
1.2.1学习数据结构的重要性5
1.2.2数据结构的应用举例5
1.3算法和算法分析7
1.3.1什么是算法7
1.3.2算法的描述和设计7
1.3.3算法分析8
本章小结10
习题10
第2章线性表12
2.1线性表的基本概念12
2.1.1线性表的定义12
2.1.2线性表的基本操作13
2.2线性表的顺序存储13
2.2.1顺序表13
2.2.2顺序表的基本操作14
2.2.3顺序存储方式举例17
2.3线性表的链式存储20
2.3.1单链表的基本概念20
2.3.2单链表的基本操作22
2.3.3链式存储举例25
2.3.4循环链表28
2.3.5双向链表30
2.3.6双向循环链表332.3.7静态链表34
2.4线性表顺序存储与链式存储的比较35
2.5线性表的应用36
2.5.1约瑟夫问题36
2.5.2多项式加法38
2.5.3电文加密40
本章小结42
习题43
第3章栈和队列45
3.1栈45
3.1.1栈的定义与基本操作45
3.1.2顺序栈的存储结构和操作的实现47
3.1.3链栈的存储结构和操作的实现50
3.2栈的应用52
3.2.1数制转换52
3.2.2括号匹配问题54
3.2.3子程序的调用55
3.2.4利用一个顺序栈逆置一个带头节点的单链表56
3.2.5后缀表达式59
3.3队列61
3.3.1队列的定义与基本操作61
3.3.2链队列的存储结构和操作的实现62
3.3.3顺序队列的存储结构和操作的实现64
3.4队列的应用68
3.4.1打印杨辉三角形68
3.4.2迷宫问题: 寻找一条从迷宫入口到出口的最短路径71
3.5递归74
3.5.1递归的定义与实现74
3.5.2递归消除77
本章小结81
习题81
第4章串85
4.1串的定义和基本操作85
4.1.1串的定义85
4.1.2串的基本操作87
4.2串的表示和实现88
4.2.1串的定长顺序存储88
4.2.2串的堆存储结构91
4.2.3串的块链存储结构93
4.3串的模式匹配算法97
4.3.1基本的模式匹配算法97
4.3.2模式匹配的改进算法——KMP算法100
本章小结102
习题102
第5章多维数组和广义表104
5.1多维数组104
5.1.1多维数组的定义104
5.1.2数组的存储结构105
5.2矩阵的压缩存储 106
5.2.1特殊矩阵106
5.2.2稀疏矩阵108
5.3广义表 114
本章小结116
习题117
第6章树和二叉树118
6.1树的概念与基本操作118
6.1.1树的定义118
6.1.2树的一些基本概念119
6.1.3树的基本操作120
6.2二叉树120
6.2.1二叉树的定义和基本操作120
6.2.2二叉树的性质121
6.2.3二叉树的存储结构123
6.3二叉树的遍历与线索化124
6.3.1二叉树的遍历124
6.3.2线索二叉树127
6.3.3基于遍历的应用与线索二叉树的应用129
6.3.4标识符树134
6.4树和森林134
6.4.1树的存储结构134
6.4.2树、森林和二叉树之间的转换137
6.4.3树和森林的遍历140
6.5哈夫曼树及其应用142
6.5.1与哈夫曼树相关的基本概念142
6.5.2哈夫曼树的应用144
6.5.3哈夫曼编码算法的实现146
*6.6树的计数147
本章小结150
习题151
第7章图154
7.1图的基本概念154
7.1.1图的定义154
7.1.2图的相关术语155
7.2图的存储结构157
7.2.1邻接矩阵表示法157
7.2.2邻接表表示法159
7.3图的遍历163
7.3.1深度优先搜索法163
7.3.2广度优先搜索法165
7.3.3非连通图的遍历167
7.4生成树与最小生成树167
7.4.1生成树的概念167
7.4.2构造最小生成树的普里姆(Prim)算法168
7.4.3构造最小生成树的克鲁斯卡尔(Kruskal)算法171
7.5最短路径173
7.5.1从某个源点到其余各顶点的最短路径174
7.5.2每一对顶点之间的最短路径178
7.6拓扑排序181
7.7关键路径184
本章小结190
习题190
第8章查找195
8.1查找的基本概念195
8.1.1查找表和查找195
8.1.2查找表的数据结构表示196
8.1.3平均查找长度ASL196
8.2线性表的查找196
8.2.1顺序查找 196
8.2.2二分查找198
8.2.3分块查找201
8.3树表的查找203
8.3.1二叉排序树203
*8.3.2平衡二叉树208
*8.3.3B-树212
8.4散列表的查找221
8.4.1散列表的概念221
8.4.2散列函数的构造方法222
8.4.3处理冲突的方法 223
8.4.4散列表上的运算 227
本章小结230
习题230
第9章排序232
9.1排序的基本概念232
9.1.1关键字与排序232
9.1.2排序的稳定性233
9.1.3排序方法的分类233
9.1.4排序算法性能评价233
9.1.5不同存储方式的排序过程233
9.2插入排序234
9.2.1直接插入排序234
9.2.2希尔排序237
9.3交换排序239
9.3.1冒泡排序239
9.3.2快速排序(霍尔排序)240
9.4选择排序244
9.4.1直接选择排序244
9.4.2堆排序245
9.5归并排序250
9.6基数排序253
9.6.1桶排序253
9.6.2多关键字的排序253
9.6.3链式基数排序254
9.7内部排序算法比较257
9.8外部排序简介259
本章小结259
习题260
参考文献263

本目录推荐