-
>
决战行测5000题(言语理解与表达)
-
>
软件性能测试.分析与调优实践之路
-
>
第一行代码Android
-
>
深度学习
-
>
Unreal Engine 4蓝图完全学习教程
-
>
深入理解计算机系统-原书第3版
-
>
Word/Excel PPT 2013办公应用从入门到精通-(附赠1DVD.含语音视频教学+办公模板+PDF电子书)
数据结构案例教程(C语言版) 版权信息
- ISBN:9787121381010
- 条形码:9787121381010 ; 978-7-121-38101-0
- 装帧:一般胶版纸
- 册数:暂无
- 重量:暂无
- 所属分类:>
数据结构案例教程(C语言版) 本书特色
全书采用C语言作为数据结构和算法的描述语言,对数据结构的定义和算法描述详细,代码注释完整,便于初学者模仿训练,循序渐进,稳步提高。本书既可作为高等院校计算机科学与技术、软件工程、通信工程等信息类专业的教材,也可供从事软件开发与工程应用设计的工作人员参考使用。 数据结构是计算机和信息技术类等相关专业的一门重要的专业基础课程。随着当前高等教育的发展和社会对各类信息人才需求的不断变化,对于数据结构课程的内容提出了更高、更全面的要求。数据结构的概念既抽象又具体,抽象在于可以脱离计算机而存在,具体则在于可用程序代码在计算机中加以实现,这对于教材的内容也提出了更高的要求。本书结合数据结构课程的发展现状和趋势,具有难度适中、结构合理、应用性强的特点。
数据结构案例教程(C语言版) 内容简介
全书共9章, 内容包括第1章数据结构基础, 综述数据结构的基本概念 ; 第2章至第5章主要讨论几种基本的线性结构, 即线性表、栈和队列、串、数组和广义表 ; 第6章和第7章主要介绍非线性结构, 即树和二叉树、图 ; 第8章和第9章分别讨论两种基本的操作, 即查找和排序。
数据结构案例教程(C语言版) 目录
1.1 数据结构的基本概念 .................................................................................................... 2
1.1.1 数据结构的研究内容 ......................................................................................... 2
1.1.2 基本概念和术语 ................................................................................................. 5
1.1.3 数据结构课程的内容 ......................................................................................... 8
1.2 数据类型和抽象数据类型 ............................................................................................ 9
1.2.1 数据类型 ............................................................................................................. 9
1.2.2 抽象数据类型 ..................................................................................................... 9
1.3 算法和算法分析 .......................................................................................................... 10
1.3.1 算法特性 ........................................................................................................... 11
1.3.2 算法描述 ........................................................................................................... 12
1.3.3 算法性能分析 ................................................................................................... 12
1.4 本章小结 ...................................................................................................................... 15
习题 ....................................................................................................................................... 16
编程实例 ............................................................................................................................... 18
第2 章 线性表 ............................................................................................. 19
2.1 线性表的定义 .............................................................................................................. 20
2.1.1 线性表的逻辑结构 ........................................................................................... 20
2.1.2 线性表的抽象数据类型 ................................................................................... 20
2.2 线性表的顺序存储及实现 .......................................................................................... 22
2.2.1 顺序表 ............................................................................................................... 22
2.2.2 顺序表的基本运算 ........................................................................................... 23
2.3 线性表的链式存储及实现 .......................................................................................... 28
vi | 数据结构案例教程(C 语言版)
2.3.1 单链表 ............................................................................................................... 29
2.3.2 单链表的基本运算 ........................................................................................... 30
2.3.3 循环链表 ........................................................................................................... 36
2.3.4 双向链表 ........................................................................................................... 37
2.3.5 静态链表 ........................................................................................................... 39
2.3.6 单链表应用举例 ............................................................................................... 40
2.4 顺序表与链表的比较 .................................................................................................. 43
2.5 本章小结 ...................................................................................................................... 44
习题 ....................................................................................................................................... 44
编程实例 ............................................................................................................................... 46
第3 章 栈和队列 ......................................................................................... 48
3.1 栈 .................................................................................................................................. 49
3.1.1 栈的定义 ........................................................................................................... 49
3.1.2 栈的表示和实现 ............................................................................................... 50
3.2 栈的应用 ...................................................................................................................... 55
3.2.1 数制转换问题 ................................................................................................... 56
3.2.2 括号匹配检验 ................................................................................................... 57
3.2.3 表达式求值 ....................................................................................................... 58
3.2.4 栈与递归 ........................................................................................................... 61
3.3 队列 .............................................................................................................................. 64
3.3.1 队列的定义 ....................................................................................................... 64
3.3.2 队列的表示和实现 ........................................................................................... 65
3.4 队列的应用 .................................................................................................................. 71
3.5 本章小结 ...................................................................................................................... 73
习题 ....................................................................................................................................... 74
编程实例 ............................................................................................................................... 75
第4 章 串 .................................................................................................... 79
4.1 串的定义和基本运算 .................................................................................................. 80
4.1.1 串的定义 ........................................................................................................... 80
4.1.2 串的基本操作 ................................................................................................... 81
4.2 串的存储结构 .............................................................................................................. 82
4.2.1 定长顺序存储 ................................................................................................... 82
4.2.2 堆存储 ............................................................................................................... 83
目 录 | vii
4.2.3 链式存储 ........................................................................................................... 85
4.3 串的运算实现 .............................................................................................................. 86
4.4 串的模式匹配 .............................................................................................................. 90
4.4.1 BF 算法 ............................................................................................................. 90
4.4.2 KMP 算法 ......................................................................................................... 92
4.5 本章小结 ...................................................................................................................... 95
习题 ....................................................................................................................................... 96
编程实例 ............................................................................................................................... 99
第5 章 数组和广义表 ................................................................................ 103
5.1 数组的定义及存储 .................................................................................................... 104
5.1.1 数组的定义 ..................................................................................................... 104
5.1.2 数组的基本操作 ............................................................................................. 105
5.1.3 数组的顺序存储 ............................................................................................. 105
5.2 特殊矩阵的压缩存储 ................................................................................................ 107
5.2.1 对称矩阵 ......................................................................................................... 108
5.2.2 三角矩阵 ......................................................................................................... 109
5.2.3 对角矩阵 ......................................................................................................... 110
5.3 稀疏矩阵 ..................................................................................................................... 111
5.3.1 稀疏矩阵的三元组表存储 .............................................................................. 111
5.3.2 稀疏矩阵的十字链表存储 ............................................................................. 115
5.4 广义表 ........................................................................................................................ 117
5.4.1 广义表的定义 ................................................................................................. 117
5.4.2 广义表的存储结构 ......................................................................................... 119
5.4.3 广义表的基本操作实现 ................................................................................. 121
5.5 本章小结 .................................................................................................................... 122
习题 ..................................................................................................................................... 123
编程实例 ............................................................................................................................. 124
第6 章 树和二叉树 .................................................................................... 127
6.1 树的定义与基本术语 ................................................................................................ 128
6.1.1 树的定义 ......................................................................................................... 128
6.1.2 树的基本术语 ................................................................................................. 131
6.2 二叉树 ........................................................................................................................ 131
6.2.1 二叉树的定义 ................................................................................................. 131
viii | 数据结构案例教程(C 语言版)
6.2.2 二叉树的性质 ................................................................................................. 134
6.2.3 二叉树的存储实现 ......................................................................................... 136
6.3 遍历二叉树 ................................................................................................................ 139
6.3.1 遍历二叉树的递归实现 ................................................................................. 139
6.3.2 遍历二叉树的非递归实现 ............................................................................. 141
6.3.3 遍历算法的应用 ............................................................................................. 145
6.4 线索二叉树 ................................................................................................................ 148
6.4.1 线索二叉树的基本概念 ................................................................................. 148
6.4.2 线索二叉树的运算实现 ................................................................................. 150
6.5 树和森林 .................................................................................................................... 153
6.5.1 树的存储结构 ................................................................................................. 153
6.5.2 树、森林与二叉树的转换 ............................................................................. 156
6.5.3 树和森林的遍历 ............................................................................................. 158
6.6 哈夫曼树及其应用 .................................................................................................... 159
6.6.1 哈夫曼树的基本概念 ..................................................................................... 159
6.6.2 构造哈夫曼树 ................................................................................................. 161
6.6.3 哈夫曼编码 ..................................................................................................... 163
6.7 本章小结 .................................................................................................................... 165
习题 ..................................................................................................................................... 166
编程实例 ............................................................................................................................. 168
第7 章 图 .................................................................................................. 172
7.1 图的定义与基本术语 ................................................................................................ 173
7.1.1 图的定义 ......................................................................................................... 173
7.1.2 基本术语 ......................................................................................................... 175
7.2 图的存储结构 ............................................................................................................ 177
7.2.1 邻接矩阵 ......................................................................................................... 177
7.2.2 邻接链表 ......................................................................................................... 179
7.2.3 十字链表 ......................................................................................................... 182
7.2.4 邻接多重表 ..................................................................................................... 183
7.3 图的遍历 .................................................................................................................... 184
7.3.1 深度优先搜索 ................................................................................................. 185
7.3.2 广度优先搜索 ................................................................................................. 187
7.4 图的应用 .................................................................................................................... 189
7.4.1 *小生成树 ..................................................................................................... 189
目 录 | ix
7.4.2 *短路径问题 ................................................................................................. 195
7.4.3 AOV 网与拓扑排序 ....................................................................................... 200
7.4.4 AOE 网与关键路径 ........................................................................................ 203
7.5 本章小结 .................................................................................................................... 208
习题 ..................................................................................................................................... 209
编程实例 ............................................................................................................................. 211
第8 章 查找 ............................................................................................... 216
8.1 查找的基本概念 ........................................................................................................ 217
8.2 线性表的查找 ............................................................................................................ 218
8.2.1 顺序查找 ......................................................................................................... 218
8.2.2 折半查找 ......................................................................................................... 219
8.2.3 分块查找 ......................................................................................................... 222
8.3 树表的查找 ................................................................................................................ 223
8.3.1 二叉排序树 ..................................................................................................... 223
8.3.2 平衡二叉树 ..................................................................................................... 229
8.3.3 B 树.................................................................................................................. 234
8.4 散列表的查找 ............................................................................................................ 241
8.4.1 散列表的基本概念 ......................................................................................... 241
8.4.2 散列函数的构造方法 ..................................................................................... 242
8.4.3 处理冲突的方法 ............................................................................................. 244
8.4.4 散列表的查找 ................................................................................................. 247
8.5 本章小结 .................................................................................................................... 248
习题 ..................................................................................................................................... 249
编程实例 ............................................................................................................................. 251
第9 章 排序 ............................................................................................... 254
9.1 排序的基本概念 ........................................................................................................ 255
9.1.1 什么是排序 ..................................................................................................... 255
9.1.2 排序的实现 ..................................................................................................... 256
9.2 插入排序 .................................................................................................................... 257
9.2.1 直接插入排序 ................................................................................................. 257
9.2.2 折半插入排序 ................................................................................................. 259
9.2.3 希尔排序 ......................................................................................................... 260
9.3 交换排序 .................................................................................................................... 261
x | 数据结构案例教程(C 语言版)
9.3.1 冒泡排序 ......................................................................................................... 261
9.3.2 快速排序 ......................................................................................................... 263
9.4 选择排序 .................................................................................................................... 266
9.4.1 简单选择排序 ................................................................................................. 266
9.4.2 堆排序 ............................................................................................................. 268
9.5 归并排序 .................................................................................................................... 273
9.6 基数排序 .................................................................................................................... 275
9.6.1 多关键字排序 ................................................................................................. 275
9.6.2 链式基数排序 ................................................................................................. 275
9.7 本章小结 .................................................................................................................... 279
习题 ..................................................................................................................................... 280
编程实例 ............................................................................................................................. 282
数据结构案例教程(C语言版) 作者简介
自参加工作以来,一直从事教学及科研工作,担任电话机、手机、电视机、VCD、计算机网络设计、计算机网站建设等专业课教学工作。在教学实践中形成了“激趣、启思、求活、务实”的教学风格和“注重启迪、鼓励创新”的教学特点,教学效果优秀,受到学生欢迎。
- >
姑妈的宝刀
姑妈的宝刀
¥9.0¥30.0 - >
烟与镜
烟与镜
¥14.4¥48.0 - >
朝闻道
朝闻道
¥8.8¥23.8 - >
新文学天穹两巨星--鲁迅与胡适/红烛学术丛书(红烛学术丛书)
新文学天穹两巨星--鲁迅与胡适/红烛学术丛书(红烛学术丛书)
¥9.9¥23.0 - >
月亮虎
月亮虎
¥14.4¥48.0 - >
上帝之肋:男人的真实旅程
上帝之肋:男人的真实旅程
¥19.3¥35.0 - >
伯纳黛特,你要去哪(2021新版)
伯纳黛特,你要去哪(2021新版)
¥15.9¥49.8 - >
苦雨斋序跋文-周作人自编集
苦雨斋序跋文-周作人自编集
¥6.9¥16.0
-
Photoshop 2022中文版案例教程
¥44.1¥59.8 -
局域网组建、管理与维护(第4版)(微课版)
¥47¥59 -
园林AUTOCAD教程
¥24¥45 -
Python实战编程:从零学Python
¥81¥108 -
Java程序设计基础
¥37¥50 -
数据备份与恢复
¥51.4¥69