图书介绍
数据结构 C语言版pdf电子书版本下载
- 洪运国编著 著
- 出版社: 上海:上海交通大学出版社
- ISBN:9787313152176
- 出版时间:2016
- 标注页数:310页
- 文件大小:41MB
- 文件页数:321页
- 主题词:数据结构-高等学校-教材;C语言-程序设计-高等学校-教材
PDF下载
下载说明
数据结构 C语言版PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如 BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
项目一 数据结构导论 1
任务一 了解数据结构的基本知识 1
一、基本术语 2
二、数据的逻辑结构 3
三、数据的存储结构 3
四、数据类型 4
任务二 了解算法的基本知识 6
一、算法的概念 6
二、算法的特性 6
三、算法的描述方法 6
四、算法设计的要求 8
五、算法性能分析 9
六、类C语言简介 10
实训1-1 将百分制成绩转换成五级分制成绩 10
实训1-2 求一组数中的最大数和最小数 13
项目小结 14
习题与上机操作 14
项目二 线性表 16
任务一 了解线性表的定义和基本操作 16
一、线性表的定义 16
二、线性表的基本操作 17
任务二 掌握顺序表的结构特点与基本操作 18
一、顺序表的结构特点 18
二、顺序表的基本操作 19
任务三 掌握链表的结构特点与基本操作 23
一、单链表的结构特点 23
二、单链表的基本操作 25
三、静态链表及其基本操作 31
四、循环链表及其基本操作 33
五、双向链表及其基本操作 34
实训2-1 学生成绩统计 37
实训2-2 求两个集合的交集 41
实训2-3 约瑟夫环问题 44
实训2-4 一元多项式运算 46
项目小结 52
习题与上机操作 52
项目三 栈和队列 55
任务一 了解栈的定义、基本操作和存储结构 55
一、栈的定义及其基本操作 55
二、栈的顺序存储结构 56
三、栈的链式存储结构 60
四、栈在递归中的应用 64
任务二 掌握队列的定义、基本操作和存储结构 65
一、队列的定义及其基本操作 65
二、队列的顺序存储结构 66
三、队列的链式存储结构 69
实训3-1 算术表达式求值 71
实训3-2 汉诺塔问题 78
实训3-3 迷宫求解 80
实训3-4 打印杨辉三角 85
项目小结 89
习题与上机操作 89
项目四 串和数组 92
任务一 了解串的定义、基本操作和存储结构 92
一、串的定义及其基本操作 92
二、定长顺序存储结构 94
三、堆存储结构 100
四、块链存储结构 104
任务二 掌握数组的定义、基本操作和存储结构 105
一、数组的定义及其基本操作 105
二、数组的顺序存储结构 106
任务三 掌握特殊矩阵和稀疏矩阵的压缩存储方法 107
一、特殊矩阵的压缩存储 108
二、稀疏矩阵的压缩存储 110
任务四 了解广义表的定义和存储结构 112
一、广义表的定义 112
二、广义表的存储结构 113
实训4-1 串的查找与替换 114
实训4-2 串的模式匹配 116
实训4-3 稀疏矩阵的转置 121
实训4-4 稀疏矩阵相加 125
项目小结 132
习题与上机操作 132
项目五 树与二叉树 134
任务一 了解树的定义和基本操作 134
一、树的定义和表示方法 134
二、树的基本术语 135
三、树的基本操作 136
任务二 掌握二叉树的特点和常用操作 137
一、二叉树的定义 137
二、二叉树的基本操作 138
三、二叉树的性质 138
四、二叉树的存储结构 140
五、遍历二叉树的方法 143
六、线索二叉树的定义和基本操作 147
任务三 掌握树和森林的存储结构与相关操作 151
一、树的存储结构 151
二、树、森林和二叉树的转换 154
三、树和森林的遍历 157
任务四 了解哈夫曼树的定义、构造方法及其应用 157
一、哈夫曼树的定义 157
二、哈夫曼树的构造 158
三、哈夫曼树编码 159
实训5-1 创建一棵二叉树并求它的高度 160
实训5-2 判断二叉树是否为完全二叉树 163
实训5-3 构造哈夫曼编码 166
实训5-4 8枚硬币的真假判定问题 171
项目小结 175
习题与上机操作 175
项目六 图 178
任务一 了解图的定义、基本术语和基本操作 178
一、图的定义 178
二、图的基本术语 179
三、图的基本操作 181
任务二 掌握图的存储结构 182
一、邻接矩阵表示法 182
二、邻接表表示法 184
三、十字链表表示法 186
四、邻接多重表表示法 188
任务三 掌握图的遍历方法 190
一、深度优先遍历 190
二、广度优先遍历 191
任务四 了解图的相关应用 192
一、生成树和最小生成树 192
二、最短路径 196
三、拓扑排序 199
四、关键路径 203
实训6-1 图的建立与遍历 207
实训6-2 拓扑排序 211
实训6-3 公共汽车的换乘问题 216
项目小结 220
习题与上机操作 220
项目七 查找 223
任务一 了解查找的相关术语 223
任务二 掌握静态查找方法 224
一、顺序查找 225
二、折半查找 226
三、索引顺序查找 230
任务三 掌握动态查找方法 232
一、二叉排序树 233
二、平衡二叉树 241
任务四 掌握哈希查找方法 252
一、哈希表的基本概念 252
二、构造哈希函数的方法 253
三、处理冲突的方法 256
四、哈希表的查找及分析 259
实训7-1 利用折半查找法查找学生成绩 261
实训7-2 创建二叉排序树并查找 264
实训7-3 利用哈希表查找员工信息 267
项目小结 270
习题与上机操作 270
项目八 排序 272
任务一 了解排序的相关概念 272
任务二 掌握插入排序方法 274
一、直接插入排序 274
二、折半插入排序 276
三、希尔排序 277
任务三 掌握交换排序方法 279
一、冒泡排序 279
二、快速排序 281
任务四 掌握选择排序方法 284
一、直接选择排序 284
二、树形选择排序 285
三、堆排序 287
任务五 掌握归并排序和基数排序方法 292
一、归并排序 292
二、基数排序 294
实训8-1 利用直接插入排序方法排序学生成绩表 299
实训8-2 利用冒泡排序方法排序学生成绩表 302
实训8-3 利用直接选择排序方法排序学生成绩表 304
实训8-4 利用堆排序方法排序学生成绩表 305
项目小结 308
习题与上机操作 308
参考文献 310