图书介绍

数据结构与算法2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

数据结构与算法
  • 齐德昱编著 著
  • 出版社: 北京:清华大学出版社
  • ISBN:7302068666
  • 出版时间:2003
  • 标注页数:413页
  • 文件大小:15MB
  • 文件页数:432页
  • 主题词:数据结构-高等学校-教材;算法分析-高等学校-教材

PDF下载


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

下载说明

数据结构与算法PDF格式电子书版下载

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

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

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

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

图书目录

第1章概述1

1.1数据结构的兴起与发展1

目 录1

1.2数据结构的研究对象2

1.3数据结构的概念3

1.4数据结构的图示4

1.5.2线性结构5

1.5.3树形结构5

1.5.1集合5

1.5数据结构的分类5

1.5.4图状结构6

1.6数据结构的存储6

1.6.1存储器表示6

1.6.2存储映像7

1.6.3基本存储方法7

1.7数据结构的访问接口9

1.7.1访问接口与逻辑结构9

1.8.1对象与类10

1.8面向对象方法10

1.7.3基本操作的实现10

1.7.2基本操作的种类10

1.8.2面向对象方法要素11

1.8.3面向对象方法的若干述评*13

1.8.4面向对象程序设计语言*14

1.9面向对象与数据结构18

1.9.1面向对象与数据结构的关系18

1.9.2面向对象数据结构18

1.9.3数据结构的对象模型19

习题20

本章小结20

第2章程序设计基本策略与方法21

2.1算法21

2.1.1算法的概念21

2.1.2算法的时间复杂度与空间复杂度22

2.1.3算法时间复杂度的度量24

2.2穷举法26

2.3递推法与迭代法26

2.3.1递推法26

2.3.2迭代法27

2.4.1递归与递归程序的概念29

2.4递归法29

2.4.2递归程序设计要点31

2.4.3递归程序执行机理31

2.4.4 Hanoi塔问题与运行图33

2.5逐步求精法35

2.5.1基本思想35

2.5.2应用示例35

2.6.1基本思想37

2.6分治法37

2.6.2平面分治法示例——顺序统计38

2.6.3迭代分治法示例——循环赛赛程安排*40

本章小结42

习题43

第3章线性表45

3.1线性表的逻辑结构45

3.1.1基本概念45

3.1.2线性表抽象模型45

3.2.1基本存储方法49

3.2线性表的顺序存储结构49

3.2.2面向对象描述50

3.3异常处理与下标选择器*59

3.3.1异常处理59

3.3.2下标选择器62

3.4线性表的链式存储——线性链表66

3.4.1链式存储方法66

3.4.2线性链表的面向对象描述66

3.4.3线性链表的面向对象实现69

3.5.1带头结点的链表79

3.5几种特殊线性链表79

3.5.2循环链表80

3.5.3双向链表81

3.6线性表应用示例82

3.6.1集合运算*82

3.6.2一元多项式相加83

3.6.3一元多项式的乘法*92

本章小结92

习题93

4.1.1栈的逻辑结构94

4.1栈94

第4章特殊线性表——栈、队列、串94

4.1.2栈的顺序存储结构96

4.1.3栈的链式存储结构100

4.2队列104

4.2.1队列的逻辑结构104

4.2.2队列的顺序存储结构105

4.2.3队列的链式存储结构110

4.3串112

4.3.1串的逻辑结构112

4.3.2串的存储结构116

本章小结119

习题120

第5章数组与十字链表121

5.1数组121

5.1.1数组的定义与运算121

5.1.2数组的存储结构与寻址问题122

5.1.3一维数组的存储与寻址122

5.1.4二维数组的存储与寻址123

5.1.5多维数组的存储与寻址124

5.1.6寻址公式的计算125

5.2特殊数组*126

5.2.1对称矩阵126

5.2.2下/上三角矩阵127

5.3稀疏矩阵127

5.3.1稀疏矩阵的逻辑表示127

5.3.2三元组表存储法128

5.3.3三元组表的操作130

5.3.4转置操作132

5.4.1存储方式138

5.4十字链表138

5.4.2十字链表对象140

5.4.3基本操作的实现142

本章小结146

习题146

第6章树形结构148

6.1树形结构的基本概念148

6.1.1树形结构的定义148

6.1.2基本术语151

6.2.2几种特殊二叉树152

6.2.1二叉树的基本概念152

6.2二叉树152

6.2.3二叉树的基本性质153

6.2.4二叉树的遍历155

6.3二叉树的存储结构157

6.3.1顺序存储结构157

6.3.2链式存储结构158

6.4二叉树对象模型160

6.4.1二叉树结点对象160

6.4.2二叉树对象161

6.5二叉树的遍历操作165

6.5.1前序遍历操作165

6.5.2中序遍历操作169

6.5.3后序遍历操作170

6.6二叉树的解析表示与存储结构之间的转化173

6.6.1双遍历结果转化为树173

6.6.2根据广义表表示创建树175

6.6.3根据存储结构创建广义表*178

6.6.4根据前序扩展序列创建树*179

6.7.1线索化的概念181

6.7二叉树的线索化181

6.7.2线索化算法182

6.8树与森林184

6.8.1树与森林的遍历184

6.8.2树、森林与二叉树之间的转化186

6.8.3树的存储结构187

6.9树对象模型*190

6.9.1树结点对象190

6.9.2树类191

6.10.1 哈夫曼树的基本概念194

6.10树的应用示例——哈夫曼树194

6.10.2哈夫曼树构造算法195

6.10.3哈夫曼树构造算法的实现196

6.10.4哈夫曼判定树199

6.10.5哈夫曼编码与数据压缩200

本章小结201

习题202

第7章图结构204

7.1图的基本概念204

7.1.1图的概念204

7.2图的对象抽象模型207

7.1.2图的基本操作207

7.2.1图结点抽象模型208

7.2.2图的边对象抽象模型208

7.2.3图抽象对象模型209

7.3图的存储结构211

7.3.1邻接矩阵法212

7.3.2邻接表214

7.3.3十字链表*218

7.3.4邻接多重表*220

7.4图的遍历222

7.4.1概述222

7.4.2深度优先遍历222

7.4.3深度优先遍历的性质227

7.4.4广度优先遍历228

7.4.5广度优先遍历的性质232

7.5拓扑排序232

7.5.1拓扑序列与AOV网233

7.5.2拓扑排序算法与实现234

7.6.1AOE网与关键路径的概念238

7.6 AOE网与关键路径238

7.6.2关键路径的识别241

本章小结242

习题242

第8章广义表244

8.1广义表的逻辑结构244

8.1.1基本概念244

8.1.2 广义表逻辑图246

8.1.3 广义表的遍历246

8.2广义表的存储结构247

8.2.1基本存储方法247

8.1.5基本操作247

8.1.4基本特性247

8.2.2链式结构的高级语言描述249

8.3 广义表对象模型*250

8.3.1广义表元素接口250

8.3.2 广义表接口251

8.4广义表的分支单链表对象*254

8.4.1结点对象254

8.4.2分支单链表对象255

8.5.1一般问题256

8.5广义表操作的实现*256

8.5.2遍历操作257

8.5.3 广义表统计计数258

8.5.4广义表的串行化与逆串行化259

8.5.5 广义表的复制与求尾261

8.6广义表结构的应用262

8.6.1多元多项式的表示262

8.6.2层次结构的表示263

本章小结264

习题264

9.1.1检索的概念266

第9章检索结构266

9.1概述266

9.1.2检索结构267

9.1.3检索算法的时间与空间复杂度分析267

9.1.4检索算法的判定树268

9.2线性结构的检索270

9.2.1顺序检索270

9.2.2折半检索271

9.2.3斐波那契检索*275

9.3.1概述280

9.2.4插值检索*280

9.3线性索引结构280

9.3.2稠密索引281

9.3.3分块索引281

9.4树形索引结构与二叉排序树283

9.4.1树形索引结构概述283

9.4.2二叉排序树的概念283

9.4.3二叉排序树的检索284

9.4.4二叉排序树的插入*286

9.4.5二叉排序树的删除*287

9.4.6二叉排序树的分析与最优二叉排序树*292

9.5平衡二叉排序树*293

9.5.1基本概念293

9.5.2若干性质293

9.5.3局部平衡调整算法294

9.6 B树299

9.6.1 B树的概念299

9.6.2 B树的存储结构300

9.6.5 B树的插入301

9.6.3 B树的基本操作301

9.6.4 B树的检索方法301

9.6.6 B树的删除304

9.6.7 B+树306

9.6.8 B树对象模型307

9.7散列结构307

9.7.1概念307

9.7.2散列技术中的主要问题308

9.7.3散列过程308

9.7.4散列函数的设计308

9.7.5冲突解决310

本章小结311

习题312

第10章外存与文件组织313

10.1 外存结构313

10.1.1 外存简介313

10.1.2磁带结构313

10.1.3磁盘结构314

10.2 文件315

10.2.1文件的概念315

10.2.3文件的物理组织316

10.2.2文件操作与存取方式316

10.2.4缓冲技术318

10.3顺序文件318

10.4索引文件319

10.5 ISAM*320

10.5.1 ISAM的概念320

10.5.2 ISAM结构的操作321

10.6 VSAM322

10.6.1 VSAM的概念322

10.6.2 VSAM结构的操作323

10.7散列方式324

10.8多索引文件325

10.8.1多重表文件325

10.8.2倒排文件326

本章小结327

习题327

第11章排序算法329

11.1概述329

11.2插入排序330

11.2.1直接插入排序331

11.2.2其他插入排序算法332

11.3交换排序332

11.3.1 冒泡排序333

11.3.2 冒泡算法的改进334

11.3.3快速排序*335

11.4选择排序336

11.4.1直接选择排序336

11.4.2堆排序337

11.5.2多段二路合并345

11.5.1二路合并345

11.5归并排序345

11.5.3二路归并排序346

11.6外排序简介348

本章小结348

习题349

第12章算法设计基本方法350

12.1 回溯法与限界剪枝法350

12.1.1基本思想350

12.1.2迷宫问题351

12.1.3稳定婚姻问题*357

12.1.4 n皇后问题365

12.1.5限界剪枝法简介*368

12.2动态规划法368

12.2.1动态规划法要素与最优性原理368

12.2.2最长公共子序列369

12.2.3流水线调度问题*374

12.2.4多源最短路径的Floyd算法380

12.2.5 0-1背包问题383

12.3贪心法385

12.3.2背包问题386

12.3.1基本思想386

12.3.3 Prim最小生成树算法389

12.3.4 Kruskal最小生成树算法396

12.3.5单源最短路径399

12.3.6贪心法要素总结405

本章小结406

习题407

词汇索引408

参考文献413

热门推荐