数据结构实用教程

数据结构实用教程
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者:
2006-09
版次: 2
ISBN: 9787302133971
定价: 32.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 372页
  •   本书是为全国高等院校计算机及相关专业开设数据结构课程而精心组织和编著的一本实用教材。它从1999年出版以来,一直深受广大读者和专家的好评,相继被许多高校选定为教科书和考研参考书,并被列选为“十一五”规划教材。这次对本书进行了认真和全面的修订,形成第2版,相信会得到更广泛的认可,对数据结构学科的教学和发展产生积极的影响。
      本书从计算机学科发展和应用的实际需要出发,对各种常用的数据结构,从逻辑结构、存储结构、运算种类、运算方法和算法等各个方面进行了深入细致的解剖和分析,使读者更容易理解基本概念和知识,能够轻松地进行算法设计和上机操作的训练,大大提高软件开发与设计的专业能力。
      另外,与本书配套的习题参考解答也一并被修订和出版,为广大自学读者提供方便。 第1章绪论 1
    1.1常用术语 1
    1.2算法描述 11
    1.3算法评价 13
    *1.4与算法描述有关的C++知识 19
    1.4.1包含文件语句 20
    1.4.2数据类型 28
    1.4.3函数 36
    1.4.4运算符重载 41
    习题1 43
    第2章线性表 48
    2.1线性表的定义和抽象数据类型 48
    2.1.1线性表的定义 48
    2.1.2线性表的抽象数据类型 49
    2.1.3操作举例 50
    2.2线性表的顺序存储和操作实现 51
    2.2.1线性表的顺序存储结构 51
    2.2.2顺序存储下的线性表操作的实现 53
    *2.3线性表应用举例 62
    2.4线性表的链接存储结构 67
    2.5线性表操作在单链表上的实现 75
    *2.6多项式计算 83
    2.6.1多项式表示与求值 83
    2.6.2两个多项式相加 88
    习题2 91
    第3章集合、稀疏矩阵和广义表 94
    3.1集合的定义和抽象数据类型 94
    3.1.1集合定义 94
    3.1.2集合的抽象数据类型 94
    3.2集合的顺序存储结构和操作实现 95
    3.3集合的链接存储结构和操作实现 102
    3.4稀疏矩阵 108
    3.4.1稀疏矩阵的定义 108
    3.4.2稀疏矩阵的存储结构 110
    *3.4.3稀疏矩阵的运算 113
    3.5广义表 120
    3.5.1广义表的定义 120
    3.5.2广义表的存储结构 122
    3.5.3广义表的运算 123
    3.5.4简单程序举例 127
    习题3 128
    第4章栈和队列 131
    4.1栈 131
    4.1.1栈的定义 131
    4.1.2栈的抽象数据类型 131
    4.2栈的顺序存储结构和操作实现 132
    4.3栈的链接存储结构和操作实现 136
    4.4栈的简单应用举例 138
    4.5算术表达式的计算 142
    4.5.1算术表达式的两种表示 142
    4.5.2后缀表达式求值的算法 144
    4.5.3把中缀表达式转换为后缀表达式的算法 146
    4.6栈与递归 150
    4.7队列 160
    4.7.1队列的定义 160
    4.7.2队列的抽象数据类型 161
    4.7.3队列的顺序存储结构和操作实现 162
    4.7.4队列的链接存储结构和操作实现 165
    *4.8队列应用举例 169
    习题4 173
    第5章树 178
    5.1树的概念 178
    5.1.1树的定义 178
    5.1.2树的表示 180
    5.1.3树的基本术语 181
    5.1.4树的性质 182
    5.2二叉树 183
    5.2.1二叉树的定义 183
    5.2.2二叉树的性质 184
    5.2.3二叉树的抽象数据类型 186
    5.2.4二叉树的存储结构 187
    5.3二叉树遍历 189
    5.4二叉树其他运算 193
    5.5树的存储结构和运算 198
    5.5.1树的抽象数据类型 198
    5.5.2树的存储结构 199
    5.5.3树的运算 201
    习题5 207
    第6章特殊二叉树 212
    6.1二叉搜索树 212
    6.1.1二叉搜索树的定义 212
    6.1.2二叉搜索树的抽象数据类型 212
    6.1.3二叉搜索树的运算 213
    6.2堆 220
    6.2.1堆的定义 220
    6.2.2堆的抽象数据类型 221
    6.2.3堆的存储结构 221
    6.2.4堆的运算 222
    6.3哈夫曼树 227
    6.3.1基本术语 227
    6.3.2构造哈夫曼树 228
    *6.3.3哈夫曼编码 231
    *6.4线索二叉树 234
    6.4.1二叉树的线索化 234
    6.4.2利用线索进行遍历 238
    *6.5平衡二叉树 241
    6.5.1平衡二叉树的定义 241
    6.5.2平衡二叉树的调整 242
    习题6 247
    第7章图 249
    7.1图的概念 249
    7.1.1图的定义 249
    7.1.2图的基本术语 250
    7.1.3图的抽象数据类型 253
    7.2图的存储结构 254
    7.2.1邻接矩阵 254
    7.2.2邻接表 257
    7.2.3边集数组 262
    7.3图的遍历 264
    7.3.1深度优先搜索遍历 264
    7.3.2广度优先搜索遍历 267
    7.3.3非连通图的遍历 269
    习题7 271
    第8章图的应用 273
    8.1图的生成树和最小生成树 273
    8.1.1生成树和最小生成树的概念 273
    8.1.2普里姆算法 275
    8.1.3克鲁斯卡尔算法 278
    8.2最短路径 281
    8.2.1最短路径的概念 281
    8.2.2从一顶点到其余各顶点的最短路径 282
    *8.2.3每对顶点之间的最短路径 286
    8.3拓扑排序 290
    8.3.1拓扑排序的概念 290
    8.3.2拓扑排序算法 293
    *8.4关键路径 296
    8.4.1顶点事件的发生时间 296
    8.4.2计算关键路径的方法和算法 299
    习题8 302
    第9章查找 305
    9.1查找的概念 305
    9.2顺序表查找 306
    9.2.1顺序查找 306
    9.2.2二分查找 307
    9.3索引查找 311
    9.3.1索引的概念 311
    9.3.2索引查找算法 314
    *9.3.3分块查找 316
    9.4散列查找 317
    9.4.1散列的概念 317
    9.4.2散列函数 319
    9.4.3处理冲突的方法 321
    9.4.4散列表的运算 324
    9.5B树查找 328
    9.5.1B_树定义 328
    9.5.2B_树查找 330
    9.5.3B_树插入 332
    9.5.4B_树删除 335
    *9.5.5对B_树的其他运算 337
    *9.5.6B+树简介 340
    习题9 341
    第10章排序 343
    10.1排序的基本概念 343
    10.2插入排序 344
    10.2.1直接插入排序 345
    *10.2.2希尔排序 346
    10.3选择排序 347
    10.3.1直接选择排序 347
    10.3.2堆排序 348
    10.4交换排序 352
    10.4.1气泡排序 352
    10.4.2快速排序 354
    10.5归并排序 357
    *10.6各种内排序方法的比较 360
    *10.7外排序 362
    10.7.1外排序的概念 362
    10.7.2外排序算法 364
    习题10 371
  • 内容简介:
      本书是为全国高等院校计算机及相关专业开设数据结构课程而精心组织和编著的一本实用教材。它从1999年出版以来,一直深受广大读者和专家的好评,相继被许多高校选定为教科书和考研参考书,并被列选为“十一五”规划教材。这次对本书进行了认真和全面的修订,形成第2版,相信会得到更广泛的认可,对数据结构学科的教学和发展产生积极的影响。
      本书从计算机学科发展和应用的实际需要出发,对各种常用的数据结构,从逻辑结构、存储结构、运算种类、运算方法和算法等各个方面进行了深入细致的解剖和分析,使读者更容易理解基本概念和知识,能够轻松地进行算法设计和上机操作的训练,大大提高软件开发与设计的专业能力。
      另外,与本书配套的习题参考解答也一并被修订和出版,为广大自学读者提供方便。
  • 目录:
    第1章绪论 1
    1.1常用术语 1
    1.2算法描述 11
    1.3算法评价 13
    *1.4与算法描述有关的C++知识 19
    1.4.1包含文件语句 20
    1.4.2数据类型 28
    1.4.3函数 36
    1.4.4运算符重载 41
    习题1 43
    第2章线性表 48
    2.1线性表的定义和抽象数据类型 48
    2.1.1线性表的定义 48
    2.1.2线性表的抽象数据类型 49
    2.1.3操作举例 50
    2.2线性表的顺序存储和操作实现 51
    2.2.1线性表的顺序存储结构 51
    2.2.2顺序存储下的线性表操作的实现 53
    *2.3线性表应用举例 62
    2.4线性表的链接存储结构 67
    2.5线性表操作在单链表上的实现 75
    *2.6多项式计算 83
    2.6.1多项式表示与求值 83
    2.6.2两个多项式相加 88
    习题2 91
    第3章集合、稀疏矩阵和广义表 94
    3.1集合的定义和抽象数据类型 94
    3.1.1集合定义 94
    3.1.2集合的抽象数据类型 94
    3.2集合的顺序存储结构和操作实现 95
    3.3集合的链接存储结构和操作实现 102
    3.4稀疏矩阵 108
    3.4.1稀疏矩阵的定义 108
    3.4.2稀疏矩阵的存储结构 110
    *3.4.3稀疏矩阵的运算 113
    3.5广义表 120
    3.5.1广义表的定义 120
    3.5.2广义表的存储结构 122
    3.5.3广义表的运算 123
    3.5.4简单程序举例 127
    习题3 128
    第4章栈和队列 131
    4.1栈 131
    4.1.1栈的定义 131
    4.1.2栈的抽象数据类型 131
    4.2栈的顺序存储结构和操作实现 132
    4.3栈的链接存储结构和操作实现 136
    4.4栈的简单应用举例 138
    4.5算术表达式的计算 142
    4.5.1算术表达式的两种表示 142
    4.5.2后缀表达式求值的算法 144
    4.5.3把中缀表达式转换为后缀表达式的算法 146
    4.6栈与递归 150
    4.7队列 160
    4.7.1队列的定义 160
    4.7.2队列的抽象数据类型 161
    4.7.3队列的顺序存储结构和操作实现 162
    4.7.4队列的链接存储结构和操作实现 165
    *4.8队列应用举例 169
    习题4 173
    第5章树 178
    5.1树的概念 178
    5.1.1树的定义 178
    5.1.2树的表示 180
    5.1.3树的基本术语 181
    5.1.4树的性质 182
    5.2二叉树 183
    5.2.1二叉树的定义 183
    5.2.2二叉树的性质 184
    5.2.3二叉树的抽象数据类型 186
    5.2.4二叉树的存储结构 187
    5.3二叉树遍历 189
    5.4二叉树其他运算 193
    5.5树的存储结构和运算 198
    5.5.1树的抽象数据类型 198
    5.5.2树的存储结构 199
    5.5.3树的运算 201
    习题5 207
    第6章特殊二叉树 212
    6.1二叉搜索树 212
    6.1.1二叉搜索树的定义 212
    6.1.2二叉搜索树的抽象数据类型 212
    6.1.3二叉搜索树的运算 213
    6.2堆 220
    6.2.1堆的定义 220
    6.2.2堆的抽象数据类型 221
    6.2.3堆的存储结构 221
    6.2.4堆的运算 222
    6.3哈夫曼树 227
    6.3.1基本术语 227
    6.3.2构造哈夫曼树 228
    *6.3.3哈夫曼编码 231
    *6.4线索二叉树 234
    6.4.1二叉树的线索化 234
    6.4.2利用线索进行遍历 238
    *6.5平衡二叉树 241
    6.5.1平衡二叉树的定义 241
    6.5.2平衡二叉树的调整 242
    习题6 247
    第7章图 249
    7.1图的概念 249
    7.1.1图的定义 249
    7.1.2图的基本术语 250
    7.1.3图的抽象数据类型 253
    7.2图的存储结构 254
    7.2.1邻接矩阵 254
    7.2.2邻接表 257
    7.2.3边集数组 262
    7.3图的遍历 264
    7.3.1深度优先搜索遍历 264
    7.3.2广度优先搜索遍历 267
    7.3.3非连通图的遍历 269
    习题7 271
    第8章图的应用 273
    8.1图的生成树和最小生成树 273
    8.1.1生成树和最小生成树的概念 273
    8.1.2普里姆算法 275
    8.1.3克鲁斯卡尔算法 278
    8.2最短路径 281
    8.2.1最短路径的概念 281
    8.2.2从一顶点到其余各顶点的最短路径 282
    *8.2.3每对顶点之间的最短路径 286
    8.3拓扑排序 290
    8.3.1拓扑排序的概念 290
    8.3.2拓扑排序算法 293
    *8.4关键路径 296
    8.4.1顶点事件的发生时间 296
    8.4.2计算关键路径的方法和算法 299
    习题8 302
    第9章查找 305
    9.1查找的概念 305
    9.2顺序表查找 306
    9.2.1顺序查找 306
    9.2.2二分查找 307
    9.3索引查找 311
    9.3.1索引的概念 311
    9.3.2索引查找算法 314
    *9.3.3分块查找 316
    9.4散列查找 317
    9.4.1散列的概念 317
    9.4.2散列函数 319
    9.4.3处理冲突的方法 321
    9.4.4散列表的运算 324
    9.5B树查找 328
    9.5.1B_树定义 328
    9.5.2B_树查找 330
    9.5.3B_树插入 332
    9.5.4B_树删除 335
    *9.5.5对B_树的其他运算 337
    *9.5.6B+树简介 340
    习题9 341
    第10章排序 343
    10.1排序的基本概念 343
    10.2插入排序 344
    10.2.1直接插入排序 345
    *10.2.2希尔排序 346
    10.3选择排序 347
    10.3.1直接选择排序 347
    10.3.2堆排序 348
    10.4交换排序 352
    10.4.1气泡排序 352
    10.4.2快速排序 354
    10.5归并排序 357
    *10.6各种内排序方法的比较 360
    *10.7外排序 362
    10.7.1外排序的概念 362
    10.7.2外排序算法 364
    习题10 371
查看详情
您可能感兴趣 / 更多
数据结构实用教程
数据中心经营之道 唐汝林 等
唐汝林 等
数据结构实用教程
数据管理十讲 袁野 崔斌 李战怀 等
袁野 崔斌 李战怀 等
数据结构实用教程
数据要素教程
杨东 白银 著
数据结构实用教程
数据驱动式教学:如何科学、有效、系统地提高学生成绩(深度剖析教学数据,助力教学决策,实时洞察学习动态,精准教学)
(美)罗伯特·J. 马扎诺,菲利普·B. 沃里克,卡梅伦·L. 雷恩斯 ,理查德·杜富尔著,张庆彬译; 中青文 出品
数据结构实用教程
数据确权的理论基础探索
彭诚信、史晓宇 著
数据结构实用教程
数据经济学
赵昌文,戎珂
数据结构实用教程
数据库原理与实践(MySQL版)()
杨俊杰,刘忠艳主编
数据结构实用教程
数据挖掘竞赛实战:方法与案例
许可乐
数据结构实用教程
数据要素估值
刘赛红、吕颖毅、王连军
数据结构实用教程
数据驱动的物流选址与调度模型及其实践
木仁 徐志强
数据结构实用教程
数据与人工智能驱动型公司:用数据和人工智能升级企业
(西) 理查德·本杰明(Richard Benjamins)
数据结构实用教程
数据库管理系统原理与实现
杜小勇、陈红、卢卫
系列丛书 / 更多
数据结构实用教程
数据中心经营之道 唐汝林 等
唐汝林 等
数据结构实用教程
数据管理十讲 袁野 崔斌 李战怀 等
袁野 崔斌 李战怀 等
数据结构实用教程
数据要素教程
杨东 白银 著
数据结构实用教程
数据驱动式教学:如何科学、有效、系统地提高学生成绩(深度剖析教学数据,助力教学决策,实时洞察学习动态,精准教学)
(美)罗伯特·J. 马扎诺,菲利普·B. 沃里克,卡梅伦·L. 雷恩斯 ,理查德·杜富尔著,张庆彬译; 中青文 出品
数据结构实用教程
数据确权的理论基础探索
彭诚信、史晓宇 著
数据结构实用教程
数据经济学
赵昌文,戎珂
数据结构实用教程
数据库原理与实践(MySQL版)()
杨俊杰,刘忠艳主编
数据结构实用教程
数据挖掘竞赛实战:方法与案例
许可乐
数据结构实用教程
数据要素估值
刘赛红、吕颖毅、王连军
数据结构实用教程
数据驱动的物流选址与调度模型及其实践
木仁 徐志强
数据结构实用教程
数据与人工智能驱动型公司:用数据和人工智能升级企业
(西) 理查德·本杰明(Richard Benjamins)
数据结构实用教程
数据库管理系统原理与实现
杜小勇、陈红、卢卫
相关图书 / 更多
数据结构实用教程
数据中心经营之道 唐汝林 等
唐汝林 等
数据结构实用教程
数据管理十讲 袁野 崔斌 李战怀 等
袁野 崔斌 李战怀 等
数据结构实用教程
数据要素教程
杨东 白银 著
数据结构实用教程
数据驱动式教学:如何科学、有效、系统地提高学生成绩(深度剖析教学数据,助力教学决策,实时洞察学习动态,精准教学)
(美)罗伯特·J. 马扎诺,菲利普·B. 沃里克,卡梅伦·L. 雷恩斯 ,理查德·杜富尔著,张庆彬译; 中青文 出品
数据结构实用教程
数据确权的理论基础探索
彭诚信、史晓宇 著
数据结构实用教程
数据经济学
赵昌文,戎珂
数据结构实用教程
数据库原理与实践(MySQL版)()
杨俊杰,刘忠艳主编
数据结构实用教程
数据挖掘竞赛实战:方法与案例
许可乐
数据结构实用教程
数据要素估值
刘赛红、吕颖毅、王连军
数据结构实用教程
数据驱动的物流选址与调度模型及其实践
木仁 徐志强
数据结构实用教程
数据与人工智能驱动型公司:用数据和人工智能升级企业
(西) 理查德·本杰明(Richard Benjamins)
数据结构实用教程
数据库管理系统原理与实现
杜小勇、陈红、卢卫