种豆资源网

当前位置:首页 > 百科 > 百科综合 / 正文

数据结构与算法:C语言版

(2019-09-15 14:40:45) 百科综合
数据结构与算法:C语言版

数据结构与算法:C语言版

《数据结构与算法:C语言版》一书共10章,一方面,涵盖数据结构的基本概念,定义了线性表、栈、伫列、串、数组、广义表、树和二叉树、图、查找、排序等各种结构的抽象数据类型,并给出了相应操作的实现算法;另一方面,採用C语言描述算法,并给出了各种算法的效率分析,以及这些结构在计算机科学及其他领域的套用。此外,每章后均配有典型例题、上机实验和习题。《数据结构与算法:C语言版》中的所有算法均在VC++环境下调试通过。

基本介绍

  • 书名:数据结构与算法:C语言版
  • 原版名称:计算机套用技术规划教材
  • ISBN:9787111321224
  • 页数:238页
  • 出版社: 机械工业出版社
  • 出版时间:第1版 (2010年10月1日)
  • 装帧:平装
  • 开本:16
  • 正文语种:简体中文

内容简介

《数据结构与算法:C语言版》在内容安排上,突出由浅入深、循序渐进、通俗易懂的特点,算法分析透彻,讲解清晰,便于学生自学。为了激发学生的学习兴趣,培养学生解决实际问题的能力,书中融入了一些典型的套用实例,如命题公式真值表的求解算法、出栈序列的求解算法等。《数据结构与算法:C语言版》可作为高等院校计算机及相关专业本科生的“数据结构”课程教材,也可供相关科技人员学习参考。

目录

前言
教学建议
第1章 绪论1
1.1 数据结构的研究对象1
1.2 数据结构的发展概况4
1.3 基本概念与术语4
1.4 数据类型与抽象数据类型6
1.4.1 数据类型6
1.4.2 抽象数据类型6
1.4.3 抽象数据类型的表示与实现7
1.5 算法与算法分析9
1.5.1 算法9
1.5.2 算法设计的原则10
1.5.3 算法效率的衡量方法和準则10
1.5.4 算法的存储空间需求12
1.6 典型例题12
1.7 上机实验13
习题13
第2章 线性表16
2.1 线性表的定义16
2.1.1 线性表的概念16
2.1.2 线性表的抽象数据类型定义16
2.2 线性表的顺序表示与实现17
2.2.1 线性表的顺序表示17
2.2.2 线性表的顺序实现18
2.2.3 顺序表的套用举例21
2.3 线性表的链式表示与实现22
2.3.1 单鍊表22
2.3.2 双向鍊表26
2.3.3 循环鍊表29
2.3.4 静态鍊表31
2.3.5 鍊表的套用举例33
2.4 典型例题35
2.5 上机实验37
习题39
第3章 栈与伫列41
3.1 栈41
3.1.1 栈的抽象数据类型定义41
3.1.2 栈的表示与实现42
3.2 栈的套用举例44
3.2.1 数制转换44
3.2.2 括弧匹配的检验45
3.2.3 表达式求值46
3.2.4 求命题公式的真值50
3.3 栈与递归实现53
3.3.1 递归的定义53
3.3.2 递归与栈的关係53
3.3.3 递归的实现54
3.3.4 用递归求所有出栈序列56
3.3.5 递归的消除57
3.4 伫列59
3.4.1 伫列的抽象数据类型定义59
3.4.2 伫列的链式表示与实现60
3.4.3 伫列的顺序表示与实现——循环伫列61
3.4.4 伫列的套用举例63
3.5 典型例题64
3.6 上机实验66
习题68
第4章 串70
4.1 串的定义70
4.2 串的表示与实现72
4.2.1 串的顺序存储表示72
4.2.2 串的链式存储表示75
4.3 串的模式匹配75
4.3.1 简单匹配算法75
4.3.2 首尾匹配算法77
4.3.3 kmp算法78
4.4 典型例题80
4.5 上机实验82
习题83
第5章 数组与广义表85
5.1 数组的定义85
5.2 数组的顺序存储86
5.3 矩阵的压缩存储88
5.3.1 特殊矩阵89
5.3.2 稀疏矩阵90
5.4 广义表94
5.4.1 广义表的定义94
5.4.2 广义表的存储结构96
5.5 典型例题98
5.6 上机实验99
习题100
第6章 树与二叉树101
6.1 树的定义101
6.1.1 树的概念与术语101
6.1.2 树的逻辑表示方法102
6.1.3 树的抽象数据类型定义102
6.2 二叉树的定义103
6.2.1 二叉树的概念103
6.2.2 二叉树的重要性质105
6.3 二叉树的存储结构106
6.3.1 二叉树的顺序存储表示106
6.3.2 二叉树的链式存储表示106
6.4 二叉树的遍历108
6.4.1 二叉树遍历的概念108
6.4.2 二叉树遍历的递归算法108
6.4.3 二叉树遍历的非递归算法109
6.4.4 层次遍历算法111
6.4.5 遍历算法的套用举例112
6.5 二叉树的构造115
6.6 线索二叉树116
6.6.1 线索二叉树的定义116
6.6.2 线索鍊表的建立117
6.6.3 线索鍊表的遍历算法118
6.7 树和森林的表示方法119
6.7.1 双亲表示法119
6.7.2 孩子鍊表表示法120
6.7.3 孩子-兄弟鍊表表示法121
6.7.4 树、森林和二叉树的对应关係121
6.8 树和森林的遍历122
6.8.1 树的遍历122
6.8.2 森林的遍历123
6.8.3 树遍历算法的套用124
6.9 赫夫曼树与赫夫曼编码124
6.9.1 赫夫曼树的定义125
6.9.2 赫夫曼树的构造125
6.9.3 赫夫曼编码127
6.1 0典型例题128
6.1 1上机实验130
习题130
第7章 图133
7.1 图的定义与术语133
7.1.1 图的相关术语133
7.1.2 图的抽象数据类型定义135
7.2 图的存储表示136
7.2.1 图的邻接矩阵存储表示136
7.2.2 图的邻接表存储表示137
7.2.3 有向图的十字鍊表存储表示138
7.2.4 无向图的邻接多重表存储表示140
7.3 图的遍历141
7.3.1 深度优先搜寻遍历图141
7.3.2 广度优先搜寻遍历图142
7.3.3 图遍历的套用举例143
7.4 最小生成树145
7.4.1 普里姆算法145
7.4.2 克鲁斯卡尔算法147
7.5 两点之间的最短路径问题148
7.5.1 从某个源点到其余各点的最短路径148
7.5.2 每一对顶点之间的最短路径150
7.6 拓扑排序151
7.7 关键路径153
7.8 典型例题156
7.9 上机实验158
习题160
第8章 查找162
8.1 基本概念162
8.2 静态查找表163
8.2.1 顺序查找163
8.2.2 有序表查找164
8.2.3 索引查找167
8.3 动态查找树表168
8.3.1 二叉排序树169
8.3.2 平衡二叉树173
8.3.3 b-树179
8.3.4 b+树183
8.3.5 键树184
8.4 哈希表185
8.4.1 哈希表的概念185
8.4.2 哈希函式的构造方法185
8.4.3 处理冲突的方法187
8.4.4 哈希表的查找189
8.4.5 哈希表的插入操作190
8.4.6 哈希表的删除操作191
8.5 典型例题191
8.6 上机实验193
习题194
第9章 排序196
9.1 概述196
9.1.1 什幺是排序196
9.1.2 内部排序和外部排序196
9.1.3 内部排序的方法197
9.2 插入排序198
9.2.1 直接插入排序198
9.2.2 折半插入排序199
9.2.3 二路插入排序200
9.2.4 表插入排序202
9.2.5 希尔排序204
9.3 交换排序205
9.3.1 起泡排序205
9.3.2 快速排序206
9.4 选择排序209
9.4.1 简单选择排序209
9.4.2 堆排序209
9.5 归併排序212
9.6 基数排序213
9.6.1 多关键字排序213
9.6.2 链式基数排序214
9.7 各种排序方法的综合比较216
9.8 外排序简介217
9.8.1 外存信息的存取218
9.8.2 外排序的基本方法218
9.9 典型例题219
9.1 0上机实验221
习题222
第10章 档案224
10.1 档案的基本概念224
10.1.1 什幺是档案224
10.1.2 档案的逻辑结构及操作224
10.1.3 档案的存储结构225
10.2 顺序档案225
10.3 索引档案226
10.3.1 isam档案227
10.3.2 vsam档案229
10.4 哈希档案231
10.5 多关键字档案232
10.5.1 多重表档案232
10.5.2 倒排档案232
10.5.3 倒排档案的套用234
10.6 典型例题235
10.7 上机实验237
习题237
参考文献239

标 签

搜索
随机推荐

Powered By 种豆资源网||