图书介绍

数据结构教程 C++语言描述PDF|Epub|txt|kindle电子书版本网盘下载

数据结构教程 C++语言描述
  • 李春葆主编;陈良臣,尹为民,蒋晶钰,喻丹丹编著 著
  • 出版社: 北京:清华大学出版社
  • ISBN:9787302351214
  • 出版时间:2014
  • 标注页数:416页
  • 文件大小:52MB
  • 文件页数:427页
  • 主题词:数据结构-高等学校-教材;C语言-程序设计-高等学校-教材

PDF下载


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

下载说明

数据结构教程 C++语言描述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.2数据的逻辑结构2

1.1.3数据的存储结构5

1.1.4数据的运算8

1.1.5数据结构和数据类型9

1.2算法及其描述11

1.2.1什么是算法11

1.2.2算法描述12

1.3算法分析31

1.3.1算法设计的目标31

1.3.2算法的时间效率分析31

1.3.3算法的存储空间分析34

1.4数据结构的目标35

本章小结39

练习题139

第2章 线性表42

2.1线性表的定义42

2.1.1什么是线性表42

2.1.2线性表的抽象数据类型描述43

2.2线性表的顺序存储结构43

2.2.1线性表的顺序存储结构——顺序表43

2.2.2顺序表基本运算的实现44

2.3线性表的链式存储结构50

2.3.1线性表的链式存储结构——链表50

2.3.2单链表51

2.3.3双链表62

2.3.4循环链表69

2.4线性表的应用75

2.4.1求解两个多项式相加问题75

2.4.2采用顺序存储结构求解76

2.4.3采用链式存储结构求解79

本章小结83

练习题283

第3章 栈和队列88

3.1栈88

3.1.1栈的定义88

3.1.2栈的顺序存储结构及其基本运算的实现90

3.1.3栈的链式存储结构及其基本运算的实现95

3.1.4栈的应用示例98

3.2队列109

3.2.1队列的定义109

3.2.2队列的顺序存储结构及其基本运算的实现110

3.2.3队列的链式存储结构及其基本运算的实现117

3.2.4队列的应用示例122

本章小结126

练习题3126

第4章 串129

4.1串的基本概念129

4.1.1什么是串129

4.1.2串的抽象数据类型130

4.2串的存储结构131

4.2.1串的顺序存储结构——顺序串131

4.2.2串的链式存储结构——链串136

4.3串的模式匹配144

4.3.1 Brute-Force算法145

4.3.2 KMP算法147

本章小结153

练习题4153

第5章 数组和广义表155

5.1数组155

5.1.1数组的基本概念155

5.1.2数组的存储结构156

5.1.3特殊矩阵的压缩存储158

5.2稀疏矩阵160

5.2.1稀疏矩阵的三元组表示160

5.2.2稀疏矩阵的十字链表表示164

5.3递归166

5.3.1递归的定义166

5.3.2何时使用递归167

5.3.3递归模型168

5.3.4递归算法的设计步骤169

5.3.5递归算法转换为非递归算法172

5.4广义表173

5.4.1广义表的定义173

5.4.2广义表的存储结构175

5.4.3广义表的运算178

本章小结183

练习题5184

第6章 树和二叉树186

6.1树186

6.1.1树的定义186

6.1.2树的逻辑结构表示方法187

6.1.3树的基本术语188

6.1.4树的性质189

6.1.5树的基本运算190

6.1.6树的存储结构191

6.2二叉树193

6.2.1二叉树的概念193

6.2.2二叉树的性质194

6.2.3二叉树的存储结构196

6.2.4二叉树的递归算法设计198

6.2.5二叉树的基本运算及实现199

6.2.6二叉树的遍历203

6.2.7二叉树的构造221

6.3线索二叉树226

6.3.1线索二叉树的定义226

6.3.2线索化二叉树228

6.3.3遍历线索化二叉树230

6.4哈夫曼树231

6.4.1哈夫曼树的定义231

6.4.2哈夫曼树的构造算法232

6.4.3哈夫曼编码234

6.5二叉树与树、森林之间的转换236

6.5.1树和二叉树的转换236

6.5.2森林和二叉树的转换237

本章小结238

练习题6239

第7章 图242

7.1图的基本概念242

7.1.1图的定义242

7.1.2图的基本术语243

7.2图的存储结构和基本运算的实现246

7.2.1邻接矩阵存储方法246

7.2.2邻接表存储方法247

7.3图的遍历254

7.3.1什么是图的遍历254

7.3.2深度优先遍历254

7.3.3广度优先遍历256

7.3.4非连通图的遍历257

7.3.5图遍历算法的应用259

7.4生成树和最小生成树267

7.4.1生成树和最小生成树的概念267

7.4.2普里姆算法271

7.4.3克鲁斯卡尔算法273

7.5最短路径275

7.5.1路径的概念275

7.5.2求一个顶点到其余各顶点的最短路径276

7.5.3求每对顶点之间的最短路径278

7.6拓扑排序282

7.7 AOE网与关键路径284

本章小结289

练习题7289

第8章 查找294

8.1查找的基本概念294

8.2线性表的查找295

8.2.1顺序查找295

8.2.2折半查找297

8.2.3索引存储结构和分块查找301

8.3树表的查找304

8.3.1二叉排序树304

8.3.2平衡二叉树312

8.3.3 B-树317

8.3.4B+树321

8.3.5 2-3-4树324

8.3.6红黑树326

8.4哈希表的查找329

8.4.1哈希表的基本概念329

8.4.2哈希函数的构造方法330

8.4.3哈希冲突的解决方法331

8.4.4哈希表的查找及性能分析334

本章小结336

练习题8336

第9章 内排序339

9.1排序的基本概念339

9.2插入排序341

9.2.1直接插入排序341

9.2.2折半插入排序344

9.2.3希尔排序345

9.3交换排序348

9.3.1冒泡排序348

9.3.2快速排序349

9.4选择排序353

9.4.1简单选择排序353

9.4.2堆排序355

9.5归并排序359

9.6基数排序362

9.7各种内排序方法的比较和选择366

本章小结367

练习题9367

第10章 外排序370

10.1外排序概述370

10.2磁盘排序371

10.2.1磁盘排序过程371

10.2.2生成初始归并段373

10.2.3多路平衡归并375

10.2.4最佳归并树378

本章小结381

练习题10381

第11章 数据结构和STL383

11.1STL概述383

11.1.1STL的发展和特点383

11.1.2 C+++标准库和STL383

11.1.3什么是算法384

11.1.4什么是容器385

11.1.5什么是迭代器386

11.1.6 STL和数据结构的关系386

11.2使用ST L387

11.2.1使用STL的名字空间387

11.2.2使用STL的示例387

11.3迭代器389

11.3.1自己设计迭代器389

11.3.2 STL的迭代器及其使用391

11.4容器392

11.4.1顺序容器392

11.4.2关联容器397

11.4.3适配器容器400

11.5算法404

11.5.1非可变序列算法404

11.5.2可变序列算法404

11.5.3排序算法405

11.5.4通用数值算法405

本章小结407

练习题11407

附录A 书中部分算法清单410

附录B 部分练习题参考答案414

参考文献416

热门推荐