21世纪高等教育计算机规划教材

数据结构与算法

分享 推荐 4 收藏 26 阅读 4.6K
王曙燕 (主编) 王春梅 (副主编) 978-7-115-32420-7

关于本书的内容有任何问题,请联系 张孟玮

1.以解决问题为驱动。每章由案例作为问题的引入,在最后引入相关算法分析与设计的基础知识。
2.侧重于算法核心思想的剖析。对算法的核心思想进行剖析,并将各种算法进行分类。
3.强调易读、易学和易教。全部算法和案例严格使用C语言编写.
4.配有设计精美、内容丰富的电子教案和素材供授课教师使用。
¥42.00 ¥35.70 (8.5 折)
教学资源仅供教师教学使用,转载或另作他用版权方有权追究法律责任。

内容摘要

  数据结构与算法设计是高等院校理工科各专业计算机应用能力提高的重要技术基础。本书将数据结构和算法分析与设计的基础知识相结合,以实际应用为驱动,将数据结构的各种知识融入到实际问题的解决中,对相关算法的核心思想进行深入剖析,并总结比较各类算法的特点和适用范围,重点培养学生使用数据结构知识分析问题和解决问题的能力,为后继课程的学习以及从事软件开发工作打下良好的基础。
  本书系统地讲解了数据结构与算法设计的相关知识,全书共有9章,论述了数据结构的基本概念、线性表、栈与队列、串、数组和广义表、树、图、查找以及排序等内容。为了让读者能够及时地检查自己的学习效果,把握自己的学习进度,每章后面都附有丰富的习题。
  本书既可以作为高等院校各专业“数据结构”课程的教材,也可供准备考研的读者阅读参考,同时也可作为工程技术人员和计算机爱好者的参考资料。

目录

目 录

第 1章 引论 1
1.1 数据结构的概念 1
1.2 数据结构的内容 5
1.2.1 数据的逻辑结构 5
1.2.2 数据的存储结构 6
1.3 算法 6
1.3.1 算法的概念 7
1.3.2 算法的评价标准 7
1.3.3 算法的描述 8
1.3.4 算法性能分析 10
习题 14

第 2章 线性表 16
2.1 应用实例 16
2.2 线性表的概念及运算 17
2.2.1 线性表的逻辑结构 17
2.2.2 线性表的运算 17
2.3 线性表的顺序存储 18
2.3.1 顺序表 18
2.3.2 顺序表的基本运算 19
2.4 线性表的链式存储 23
2.4.1 单链表 23
2.4.2 单链表基本运算 24
2.4.3 循环链表 31
2.4.4 双向链表 32
2.4.5 静态链表 33
2.5 顺序表和链表的比较 33
2.6 实例分析与实现 34
习题 42

第3章 栈和队列 45
3.1 应用实例 45
3.2 栈 46
3.2.1 栈的概念及运算 46
3.2.2 栈的顺序存储结构 47
3.2.3 栈的链式存储结构 50
3.2.4 栈的应用 52
3.3 队列 57
3.3.1 队列的概念及其运算 57
3.3.2 循环队列 59
3.3.3 链队列 61
3.4 实例分析与实现 63
3.5 算法总结——递归与分治算法 69
习题 71

第4章 串 73
4.1 应用实例 73
4.2 串及其运算 74
4.2.1 串的基本概念 74
4.2.2 串的基本运算 75
4.2.3 串的基本运算示例 77
4.3 串的存储结构及实现 77
4.3.1 定长顺序串 77
4.3.2 堆串 80
4.3.3 块链串 82
4.4 串的模式匹配 83
4.4.1 BF模式匹配算法 84
4.4.2 KMP模式匹配算法 85
4.5 实例分析与实现 91
4.5.1 串的实例分析 91
4.5.2 简单文本编辑软件的实现 92
4.6 算法总结 94
习题 95

第5章 多维数组和广义表 97
5.1 应用实例 97
5.2 多维数组 97
5.3 矩阵的压缩存储 99
5.3.1 特殊矩阵 99
5.3.2 稀疏矩阵 100
5.4 广义表 107
5.4.1 广义表的概念 107
5.4.2 广义表的存储 108
5.4.3 广义表的操作 109
5.5 实例分析与实现 111
习题 113

第6章 树 115
6.1 应用实例 115
6.2 树的概念 117
6.2.1 树的定义与表示 117
6.2.2 树的基本术语 118
6.2.3 树的抽象数据类型定义 119
6.3 二叉树 120
6.3.1 二叉树的定义 120
6.3.2 二叉树的性质 122
6.3.3 二叉树的存储 124
6.4 二叉树的遍历 126
6.4.1 二叉树的遍历及递归实现 126
6.4.2 二叉树遍历的非递归实现 128
6.4.3 遍历算法的应用 132
6.4.4 由遍历序列确定二叉树 136
6.5 线索二叉树 137
6.5.1 线索二叉树的基本概念 137
6.5.2 线索二叉树的基本操作 138
6.6 树和森林 140
6.6.1 树的存储 140
6.6.2 树、森林与二叉树的转换 143
6.6.3 树和森林的遍历 146
6.7 哈夫曼树及其应用 148
6.7.1 哈夫曼树 148
6.7.2 哈夫曼编译码 151
6.8 实例分析与实现 153
6.8.1 表达式树 153
6.8.2 树与等价类的划分 155
6.8.3 回溯法与N皇后问题 158
6.9 算法总结 160
习题 161

第7章 图 164
7.1 应用实例 164
7.2 图的基本概念 165
7.3 图的存储结构 167
7.3.1 邻接矩阵 167
7.3.2 邻接表 169
7.3.3 十字链表 171
7.3.4 多重链表 172
7.4 图的遍历 173
7.4.1 深度优先搜索遍历 173
7.4.2 广度优先搜索遍历 175
7.5 图的应用 176
7.5.1 **小生成树 176
7.5.2 拓扑排序 181
7.5.3 关键路径 184
7.5.4 **短路径 188
7.6 实例分析与实现 192
7.7 算法总结——贪心算法 199
习题 203

第8章 查找 207
8.1 概述 207
8.2 基于线性表的查找 208
8.2.1 顺序查找 208
8.2.2 折半查找 210
8.2.3 索引查找 213
8.3 基于树的查找 214
8.3.1 二叉排序树 214
8.3.2 平衡二叉树 220
8.3.3 B树和B+树 228
8.3.4 伸展树 234
8.3.5 红黑树 236
8.4 散列 241
8.4.1 Hash函数的构造方法 241
8.4.2 处理冲突的方法 243
8.4.3 Hash表查找 245
8.5 算法总结 248
习题 249

第9章 排序 252
9.1 概述 252
9.2 插入类排序 254
9.2.1 直接插入排序 255
9.2.2 折半插入排序 257
9.2.3 希尔排序 258
9.3 交换类排序 259
9.3.1 冒泡排序 259
9.3.2 快速排序 262
9.4 选择类排序 264
9.4.1 简单选择排序 264
9.4.2 树形选择排序 265
9.4.3 堆排序 267
9.5 归并类排序 272
9.5.1 二路归并排序 272
9.5.2 自然归并排序 274
9.6 分配类排序 275
9.6.1 多关键字排序 275
9.6.2 链式基数排序 276
9.7 外部排序 278
9.7.1 置换选择排序 279
9.7.2 多路归并外排序 281
9.8 算法总结 285
习题 286

参考文献 288

读者评论

  • 不是教师怎么获取答案作参考啊

    ljr1510029189发表于 2017/11/19 20:37:55
    • 作者不提供学生答案。

      张孟玮发表于 2017/11/20 8:09:30

我要评论

推荐用户

同系列书

  • Java Web程序设计教程

    陈沛强 谷灵康 金京犬

    本书作为Java Web程序设计的大学教程,对Java EE编程技术进行了系统全面的介绍。全书共分14章。首先...

    ¥48.00
  • C++程序设计——思想与方法 慕课版(第3版)

    翁惠玉 俞勇

    本书以C++语言为环境,重点讲授程序设计的思想和方法,包括过程化的程序设计和面向对象的程序设计,且本书非常强调...

    ¥49.80
  • 网页设计与制作(附微课视频 第2版)

    雷伟军

    本书依据教育部高等学校计算机基础课程教学指导委员会提出的《关于进一步加强高校计算机基础教学的意见》中有关“网页...

    ¥45.00
  • 多媒体技术及应用

    李小英 谷长龙 段伟 蔡益红

    本书全面系统地介绍了多媒体技术的基础知识与应用软件的使用。全书共5章。第1章多媒体技术概论讲述了多媒体技术的基...

    ¥39.00
  • 大学计算机应用基础教程(Windows 7+MS Office 2010)

    刘艳慧 高慧 巴钧才 李娜 王瑾

    本书是根据教育部考试中心制定的《全国计算机等级考试二级MS Office高级应用考试大纲》(2013年版)编写...

    ¥39.80

相关图书

  • 数据库系统原理(微课版)

    本书对数据库系统的概念、原理、技术和方法进行系统、全面的阐述。本书共14章,内容包括数据库概述、关系数据库、关...

    ¥69.80
  • 人工智能原理及MATLAB实现

    许国根

    本书系统地阐述了人工智能算法的基本原理、实现技术及其应用,基本涵盖了其重要理论和方法,包括了最近发展起来的并被...

    ¥79.80
  • 实用软件工程(附微课视频 第3版)

    吕云翔

    本书按照典型的软件开发过程组织和编写内容,旨在培养读者具备软件工程思想及实际软件开发的能力。全书共11章, 内...

    ¥69.80
  • 计算机视觉开发实战——基于OpenCV

    郭佳

    本书以实践为导向,将理论与实践相结合,深入浅出地介绍了使用Python与OpenCV进行计算机视觉实践的基本知...

    ¥49.80
  • 脑科学导论

    莫宏伟 徐立芳

    本书较为全面地介绍了脑科学、神经科学的基本概念、知识和理论,以及脑科学、神经科学等方面的新成果和新发现。全书共...

    ¥79.80
人邮微信
本地服务
教师服务
教师服务
读者服务
读者服务
返回顶部
返回顶部