图书介绍

数据结构算法 Visual C++6.0程序集PDF|Epub|txt|kindle电子书版本网盘下载

数据结构算法 Visual C++6.0程序集
  • 侯识忠等编著 著
  • 出版社: 北京:中国水利水电出版社
  • ISBN:7508429567
  • 出版时间:2005
  • 标注页数:364页
  • 文件大小:10MB
  • 文件页数:380页
  • 主题词:数据结构;算法分析;C语言-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

数据结构算法 Visual C++6.0程序集PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

前言1

第1章 顺序存储结构的表、堆栈和队列1

1.1 线性表的数组表示和实现1

1.1.1 程序构思1

1.1.2 线性表的类定义linelistl.h1

目录1

1.1.3 线性表的实现linelistl.cpp2

1.1.4 线性表的测试linelistl m.cpp5

1.1.5 linelistlm.cpp运行结果7

1.2 线性表的动态分配顺序表示和实现8

1.2.1 程序构思8

1.1.6 分析8

1.2.2 线性表的类定义linelist2.h9

1.2.3 线性表的实现linelist2.cpp10

1.2.4 线性表的测试linelist2m.cpp13

1.2.5 linelist2m.cpp运行结果15

1.2.6 分析16

1.3 顺序堆栈的类定义(动态分配)和实现16

1.3.1 程序构思16

1.3.2 顺序栈的类定义stackl.h16

1.3.3 顺序栈的实现stackl.cpp17

1.3.4 顺序栈的测试stacklM.cpp18

1.3.5 stacklM.cpp运行结果19

1.4.1 程序构思20

1.4.2 顺序栈的类定义stack.h20

1.4 顺序堆栈的类定义(动态分配)和实现20

1.4.3 顺序栈的实现stack.cpp21

1.4.4 顺序栈的测试stackmain.cpp21

1.4.5 stackmain.cpp运行结果23

1.5 顺序堆栈的类定义(数组表示)和实现23

1.5.1 程序构思23

1.5.2 顺序堆栈的类定义linearStackl.h23

1.5.3 顺序堆栈的实现linearStackl.cpp24

1.5.4 顺序堆栈的测试linearStacklm.cpp25

1.5.5 linearStacklm.cpp运行结果26

1.5.6 分析26

1.6 将中缀表达式转换为后缀表达式26

1.7 十进制数转换成八进制数28

1.8 括号匹配的检验29

1.9 行编辑程序30

1.10 行编辑程序32

1.11 表达式求值35

1.12 顺序循环队列的类定义(数组表示)和实现37

1.12.1 程序构思37

1.12.2 顺序循环队列的类定义queuel.h37

1.12.3 顺序循环队列的实现queuel.cpp38

1.12.4 顺序循环队列的测试queuelm.cpp39

1.12.5 queuelm.cpp运行结果39

1.13 顺序循环队列的类定义(动态分配)和实现40

1.13.1 程序构思40

1.13.2 顺序循环队列的类定义queue2.h40

1.13.4 顺序循环队列的测试queue2m.cpp41

1.13.3 顺序循环队列的实现queue2.cpp41

1.13.5 queue2m.cpp运行结果42

1.14 循环双端队列顺序表示和实现43

1.14.1 程序构思43

1.14.2 循环双端队列顺序表示duilie.cpp43

1.14.3 循环双端队列实现43

1.14.4 循环双端队列的测试44

1.14.5 duilie.cpp运行结果45

1.14.6 分析45

1.15 不考虑优先级相同元素的先进先出问题的顺序优先级队列45

1.15.1 程序构思45

1.15.2 不考虑优先级相同元素的先进先出问题的顺序优先级队列类定义SqPQueue.h45

1.15.3 顺序优先级队列的实现SqPQueue.cpp46

1.15.4 顺序优先级队列的测试SqPQueuem.cpp47

1.15.5 SqPQueuem.cpp运行结果48

1.16 考虑优先级相同元素的先进先出问题的顺序优先级队列48

1.16.1 程序构思48

1.16.2 考虑优先级相同元素的先进先出问题的顺序优先级队列类定义SPQueue.h48

1.16.3 顺序优先级队列的实现SPQueue.cpp49

1.16.4 顺序优先级队列的测试SPQueuem.cpp50

1.16.5 SPQueuem.cpp运行结果51

1.16.6 分析51

第2章 链式存储结构的表、堆栈和队列52

2.1 单链表的链式表示和实现52

2.1.1 程序构思52

2.1.2 单链表的类定义linklist3.h52

2.1.3 单链表的实现linklist3.cpp53

2.1.4 单链表的测试linklist3m.cpp57

2.1.5 linklist3m.cpp运行结果58

2.1.6 分析59

2.2 链式堆栈的类定义(动态分配)和实现59

2.2.1 程序构思59

2.2.2 链式堆栈的类定义linearStack2.h59

2.2.3 链式堆栈的实现linearStack2.cpp60

2.2.4 链式堆栈的测试linearStack2m.cpp62

2.2.5 linearStack2m.cpp运行结果63

2.2.6 分析63

2.3 后缀表达式求值63

2.4.2 链式队列的类定义linqueue.h65

2.4.3 链式队列的实现linqueue.cpp65

2.4.1 程序构思65

2.4 链式队列的类定义和实现65

2.4.4 链式队列的测试linqueuem.cpp66

2.4.5 linqueuem.cpp运行结果67

2.5 单循环链表类定义和实现68

2.5.1 程序构思68

2.5.2 单循环链表的类定义cirlinklist.h68

2.5.3 单循环链表的实现cirlinklist.cpp69

2.5.4 单循环链表的测试与应用cirlinklistm.cpp73

2.5.5 cirlinklistm.cpp运行结果74

2.6.2 双向循环链表的类定义dcirlinkl.h76

2.6.1 程序构思76

2.6 双向循环链表的类定义和实现76

2.5.6 分析76

2.6.3 双向循环链表的实现dcirlinkl.cpp77

2.6.4 双向循环链表的测试与应用dcirlinklm.cpp82

2.6.5 dcirlinklm.cpp运行结果83

2.6.6 分析85

2.7 迷宫求解85

第3章 数组、串和广义表88

3.1 变长参数表的应用88

3.1.1 程序构思88

3.2.1 程序构思89

3.2.2 建立一维、二维数组的类定义intarray.h89

3.2 建立一维、二维数组的类定义和实现89

3.1.2 VLArgument.cpp运行结果89

3.2.3 建立一维、二维数组的类实现intarray.cpp90

3.2.4 建立一维、二维数组的类测试intarraym.cpp91

3.2.5 intarraym.cpp运行结果92

3.3 稀疏矩阵的类定义与操作92

3.3.1 程序构思92

3.3.2 稀疏矩阵的类定义与操作xishu.h92

3.3.3 稀疏矩阵相关操作的测试xishuM.cpp95

3.3.4 xishuM.cpp运行结果97

3.4 十字链表的定义与相关操作98

3.4.1 程序构思98

3.4.2 十字链表的定义与相关操作xishuMl.cpp98

3.5.2 十字链表的类定义与相关操作xishuM2.cpp100

3.5.1 程序构思100

3.4.4 xishuMl.cpp运行结果100

3.5 十字链表的定义与相关操作100

3.4.3 十字链表的操作测试100

3.5.3 十字链表相关操作的测试102

3.5.4 xishuM2.cpp运行结果102

3.6 十字链表的定义与相关操作102

3.6.1 程序构思102

3.6.2 十字链表的定义与相关操作xishuM3.cpp102

3.6.3 十字链表相关操作的测试104

3.6.4 xishuM3.cpp运行结果104

3.7 十字链表的定义与相关操作104

3.7.1 程序构思104

3.7.2 十字链表的类定义与相关操作xishuM4.cpp105

3.7.3 十字链表相关操作的测试106

3.7.4 xishuM4.cpp运行结果106

3.8 广义表的类定义和实现107

3.8.1 程序构思107

3.8.2 广义表的类定义guangyi.h107

3.8.3 广义表的类实现guangyi.cpp108

3.8.4 广义表的相关操作的测试guangyiM.cpp114

3.8.5 guangyiM.cpp运行结果116

3.8.6 分析116

3.9 字符串的模式匹配117

3.9.1 程序构思117

3.9.2 字符串的模式匹配测试118

3.9.3 Findstr.cpp运行结果119

3.10 串模式匹配的类定义和实现120

3.10.1 程序构思120

3.10.2 串模式匹配的类定义FindSub.cpp120

3.10.3 串模式匹配的类实现120

3.10.4 串模式匹配的测试121

3.10.5 FindSub.cpp运行结果122

第4章 递归123

4.1 递归运算(栈的应用)123

4.1.1 程序构思123

4.1.2 递归运算(栈的应用)Recurve.cpp123

4.1.6 分析124

4.1.5 Recurve.cpp运行结果124

4.1.4 链式栈类操作测试124

4.1.3 链式栈类实现124

4.2 使用回溯法求解迷宫问题125

4.2.1 程序构思125

4.2.2 路口的结构体定义migong.cpp125

4.2.3 迷宫类定义与实现125

4.2.4 迷宫类的测试126

4.2.5 migong.cpp运行结果126

第5章 树和二叉树127

5.1 树的类定义和实现127

5.1.1 程序构思127

5.1.2 树的孩子兄弟表示法为存储结构的结构体Tree.h127

5.1.3 树类的实现Tree.cpp128

5.1.4 树类相关操作的测试TreeM.cpp131

5.2 二叉树的类定义和实现132

5.2.1 程序构思132

5.1.5 TreeM.cpp运行结果132

5.2.2 二叉树类定义btree2.h133

5.2.3 二叉树类的实现btree2.cpp134

5.2.4 二叉树类相关操作的测试btree2M.cpp137

5.2.5 btree2M.cpp运行结果138

5.2.6 分析139

5.3 二叉树的类定义和实现139

5.3.1 程序构思139

5.3.2 二叉树类定义btree.h139

5.3.3 二叉树类的实现btree.cpp140

5.3.5 btreeM.cpp运行结果144

5.3.4 二叉树类相关操作的测试btreeM.cpp144

5.3.6 分析145

5.4 二叉搜索树的类定义和实现145

5.4.1 程序构思145

5.4.2 二叉搜索树的类定义BSTree.h145

5.4.3 二叉搜索树类的实现BSTree.cpp146

5.4.4 二叉搜索树相关操作的测试BSTreeM.cpp150

5.4.5 BSTreeM.cpp运行结果151

5.5 二叉搜索树的类定义和实现152

5.5.1 程序构思152

5.5.2 二叉搜索树的类定义与实现BSTREE1.h152

5.5.3 二叉搜索树类的实现153

5.5.4 二叉搜索树的类型测试BSTreelM.cpp156

5.6 二叉搜索树的类定义和实现157

5.6.1 程序构思157

5.5.5 BSTree1M.cpp运行结果157

5.6.2 二叉搜索树的类定义BSTreeF.h158

5.6.3 二叉搜索树类的实现BSTreeF.cpp159

5.6.4 二叉搜索树类相关操作的测试BSTreeFM.cpp164

5.6.5 BSTreeFM.cpp运行结果165

5.7 线索二叉树类定义和实现165

5.7.1 程序构思165

5.7.2 线索二叉树结点类型存储结构体TBSTree.h166

5.7.3 线索二叉树类的实现167

5.7.4 线索二叉树类相关操作的测试TBSTreeM.cpp170

5.8.1 程序构思171

5.7.5 TBSTreeM.cpp运行结果171

5.8 线索二叉树类定义和实现171

5.8.2 线索二叉树结点类型存储结构体TBSTreel.h172

5.8.3 线索二叉树类的实现173

5.8.4 线索二叉树类相关操作的测试TBSTree1M.cpp175

5.8.5 TBSTree1M.cpp运行结果176

5.9 线索二叉树类定义和实现176

5.9.1 程序构思176

5.9.2 线索二叉树结点类型存储结构体TBSTree2.h176

5.9.3 线索二叉树类与派生类的实现177

5.9.4 线索二叉树类相关操作的测试TBSTree2M.cpp180

5.10.2 赫夫曼树与赫夫曼编码Huffman.cpp181

5.10.1 程序构思181

5.9.5 TBSTree2M.cpp运行结果181

5.10 赫夫曼树与赫夫曼编码181

5.10.3 类实现182

5.10.4 赫夫曼编码问题的测试183

5.10.5 Huffman.cpp运行结果184

5.11 赫夫曼树与赫夫曼编码184

5.12 赫夫曼树与赫夫曼编码186

5.13 线性表的动态分配顺序表示和实现188

5.14 最小堆的类定义和实现189

5.14.1 程序构思189

5.14.2 最小堆的类定义minheap.h190

5.14.3 最小堆的实现minheap.cpp190

5.14.4 最小堆类的测试minheapm.cpp192

5.14.5 minheapm.cpp运行结果193

5.15 利用最小堆相关操作进行堆排序193

5.16 最大堆的类定义和实现194

5.16.1 程序构思194

5.16.2 最大堆的类定义maxheap.h195

5.16.3 最大堆的实现maxheap.cpp195

5.16.4 最大堆类的测试maxheapm.cpp197

5.16.5 maxheapm.cpp运行结果198

5.17 利用最大堆相关操作进行堆排序198

6.1.2 图的相关数据类型的定义graph.h200

6.1.1 程序构思200

6.1 图的类定义和实现200

第6章 图200

6.1.3 图的相关运算的实现graph.cpp201

6.1.4 图的相关运算的测试graphM.cpp206

6.1.5 graphM.cpp运行结果207

6.2 图的类定义和实现208

6.2.1 程序构思208

6.2.2 图的相关数据类型的定义graph0.h209

6.2.3 图的相关运算的实现graph0.cpp210

6.2.4 图的相关运算的测试graph0M.cpp215

6.2.5 graph0M.cpp运行结果216

6.3.1 程序构思217

6.3.2 图的相关数据类型的定义graph1.h217

6.3 图的类定义和实现217

6.2.6 分析217

6.3.3 图的相关运算的实现graph1.cpp218

6.3.4 图的相关运算的测试graph1M.cpp224

6.3.5 graph1M.cpp运行结果225

6.4 利用普里姆算法求出用邻接矩阵表示的图的最小生成树226

6.4.1 程序构思226

6.4.2 图的相关数据类型的定义graph2.h226

6.4.3 图的运算的实现文件graph2.cpp227

6.4.4 图的相关运算的测试graph2M.cpp229

6.5.1 程序构思230

6.5 利用克鲁斯卡尔方法求边集数组所示图的最小生成树230

6.4.5 graph2M.cpp运行结果230

6.4.6 分析230

6.5.2 图的相关数据类型的定义graph3.h231

6.5.3 图的运算的实现文件graph3.cpp232

6.5.4 图的相关运算的测试graph3M.cpp235

6.5.5 graph3M.cpp运行结果235

6.5.6 分析236

6.6 狄克斯特拉算法(从一个顶点到其余各顶点的最短路径)236

6.6.1 程序构思236

6.6.2 最短路径(狄克斯特拉算法)PshortP.h236

6.6.3 狄克斯特拉算法测试PshortPM.cpp237

6.7 最短路径(从一个顶点到其余各顶点的最短路径)238

6.7.1 程序构思238

6.6.5 分析238

6.6.4 PShortPM.cpp运行结果238

6.7.2 最短路径(狄克斯特拉算法)PshortP1.cpp239

6.7.3 算法测试239

6.7.4 PShortP1.cpp运行结果240

6.7.5 分析241

6.8 最短路径(所有顶点之间的最短路径)241

6.8.1 程序构思241

6.8.2 最短路径SShortP.cpp241

6.8.3 算法测试242

6.8.4 SShortP.cpp运行结果242

6.9.2 最短路径SShortP1.cpp244

6.9.1 程序构思244

6.9.3 算法测试244

6.8.5 分析244

6.9 最短路径(所有顶点之间的最短路径)244

6.9.4 SShortP1.cpp运行结果245

6.9.5 分析247

6.10 最短路径(弗洛伊德算法、所有顶点之间的最短路径)247

6.10.1 程序构思247

6.10.2 最短路径(弗洛伊德算法)FloydP.h247

6.10.3 弗洛伊德算法测试FloydP.cpp248

6.10.4 FloydP.cpp运行结果248

6.11.1 程序构思250

6.11.2 弗洛伊德算法测试FloydPl.cpp250

6.11 最短路径(弗洛伊德算法、所有顶点之间的最短路径)250

6.10.5 分析250

6.11.3 FloydPl.cpp运行结果251

6.11.4 分析253

6.12 拓扑排序253

第7章 排序256

7.1 桶排序256

7.2 插入排序法(类方法)257

7.3 插入排序法(类方法)259

7.4 插入排序法260

7.5 希尔排序法(类方法)262

7.6 希尔排序263

7.7 快速排序(类方法)265

7.8 快速排序(类方法)266

7.9 快速排序268

7.10 快速排序269

7.11 通用选择排序法271

7.12 选择排序272

7.13 选择排序法(下沉)273

7.14 选择排序法(类方法)274

7.15 选择排序法(函数模板、排序不改变原数组各元素的值)276

7.16 选择排序法(函数模板、上浮)277

7.17 选择排序法(排序后不改变原数组各元素的值)279

7.18 通用冒泡排序法(下沉)280

7.19 冒泡排序法(上浮)281

7.20 冒泡排序法(下沉)282

7.21 通用冒泡排序法(上浮)283

7.22 归并排序(类方法)285

7.23 归并排序法287

7.24 堆排序法(类方法)288

7.25 堆排序法290

7.26 堆排序法(迭代器)291

7.27 基数排序法(类方法)293

7.28 基数排序法(函数模板)294

7.29 锦标赛排序法295

7.30 多种排序方法297

7.31 K路平衡归并301

7.32 对外存文件(磁盘文件)进行选择排序的算法303

7.33 外存文件的排序操作(二路平衡归并)305

8.1 二分查找法(递归调用)309

8.2 二分查找法(非递归调用)309

第8章 查找309

8.3 二叉排序树的类定义与实现310

8.3.1 程序构思310

8.3.2 二叉排序树的类定义311

8.3.3 二叉排序树的类实现311

8.3.4 二叉排序树类的测试313

8.3.5 BinSortT.cpp运行结果314

8.4 Fibonacci查找法314

8.5 平衡二叉搜索树类定义与实现315

8.5.1 程序构思315

8.5.2 平衡二叉搜索树类定义与实现AVLTREE.h316

8.5.3 平衡二叉搜索树的类模板实现317

8.5.4 平衡二叉搜索树类测试AVLTREEM.cpp321

8.6 顺序表的查找322

8.5.5 AVLTREEM.cpp运行结果322

8.5.6 分析322

8.7 B-树的操作325

8.7.1 程序构思325

8.7.2 B-树的操作B_Tree.cpp325

8.7.3 B-树的相关操作的测试329

8.7.4 B_Tree.cpp运行结果329

8.8 B-树的(类方法)操作330

8.8.1 程序构思330

8.8.2 B-树的结点类型定义330

8.8.3 B-树的类实现331

8.9.1 程序构思334

8.9 哈希表334

8.8.5 B_Treel.cpp运行结果334

8.8.4 B-树的类相关操作的测试334

8.9.2 哈希表的结点类型定义335

8.9.3 哈希表的操作实现335

8.9.4 哈希表的相关操作的测试336

8.9.5 hashtable.cpp运行结果337

8.10 散列表类定义与实现337

8.10.1 程序构思337

8.10.2 散列表类定义LHashL.h338

8.10.3 散列表类的实现LHashL.cpp338

8.10.4 散列表类的相关操作的测试340

8.10.5 LHashLM.cpp运行结果341

8.10.6 分析343

9.1.1 程序构思344

9.1.2 散列文件的类模板定义、插入、删除和查找操作HashFM.cpp344

第9章 文件344

9.1 散列文件的插入、删除和查找操作344

9.1.3 散列文件的类模板实现345

9.1.4 散列文件的类模板实现的测试351

9.1.5 HashFM.cpp运行结果353

9.2 索引文件的相关操作354

9.2.1 程序构思354

9.2.2 索引文件的相关操作IndexF.cpp355

9.2.3 索引文件的类模板实现356

9.2.4 索引文件的类模板实现的测试IndexFM.cpp361

9.2.5 IndexFM.cpp运行结果362

参考文献364

热门推荐