图书介绍

数据结构与算法PDF|Epub|txt|kindle电子书版本网盘下载

数据结构与算法
  • 汪沁,奚李峰,邓芳等著 著
  • 出版社: 北京:清华大学出版社
  • ISBN:9787302281337
  • 出版时间:2012
  • 标注页数:275页
  • 文件大小:15MB
  • 文件页数:288页
  • 主题词:数据结构-高等学校-教材;算法分析-高等学校-教材

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数据结构的概念2

1.1.1引言2

1.1.2数据结构有关概念与术语4

1.2抽象数据类型6

1.3算法描述与分析7

1.3.1什么是算法7

1.3.2算法分析技术初步9

1.4基本的算法策略12

1.4.1穷举法12

1.4.2递推法与迭代法13

1.4.3分治法15

1.4.4贪婪算法16

1.4.5动态规划17

1.5案例分析19

1.6小结20

讨论小课堂121

习题122

第2章 线性表24

2.1线性表的定义及其运算24

2.1.1线性表的定义24

2.1.2线性表的基本操作25

2.2线性表的顺序存储结构及实现26

2.2.1顺序存储结构26

2.2.2线性表在向量中基本运算的实现27

2.3线性表的链表存储结构32

2.3.1单链表32

2.3.2线性链表基本运算的实现35

2.4循环链表和双向链表41

2.4.1循环链表41

2.4.2双向链表42

2.4.3顺序存储结构与链表存储结构的综合分析与比较43

2.5单链表的应用44

2.5.1多项式相加的链表存储结构44

2.5.2多项式相加的算法实现45

2.6小结46

讨论小课堂247

习题247

第3章 栈和队列49

3.1栈49

3.1.1栈的定义49

3.1.2栈的基本操作50

3.2栈的顺序存储结构及实现51

3.2.1栈的顺序存储结构51

3.2.2顺序栈的定义52

3.3栈的链表存储结构及实现54

3.4栈的应用56

3.4.1表达式的计算56

3.4.2子程序的嵌套调用58

3.4.3递归调用59

3.5队列60

3.5.1队列的定义及运算60

3.5.2队列的抽象数据类型描述61

3.6队列的顺序存储结构及实现61

3.7队列的链表存储结构及实现64

3.8队列的应用67

3.9算法实例——Hanoi塔问题68

3.10小结70

讨论小课堂370

习题371

第4章串72

4.1串的基本概念72

4.1.1串的定义72

4.1.2串的基本操作73

4.2串的存储与基本操作的实现74

4.2.1定长顺序串74

4.2.2堆串75

4.2.3块链串75

4.2.4串操作的实现76

4.3串的模式匹配80

4.3.1朴素模式匹配算法80

4.3.2模式匹配的KMP算法81

4.4串的应用举例:文本编辑85

4.5小结86

讨论小课堂487

习题487

第5章 数组和广义表88

5.1数组88

5.1.1数组的基本概念88

5.1.2二维数组89

5.1.3数组的顺序存储方式89

5.2矩阵的压缩存储90

5.2.1特殊矩阵91

5.2.2稀疏矩阵93

5.3广义表98

5.3.1广义表的定义98

5.3.2广义表的存储结构99

5.4案例分析101

5.4.1概述和方法101

5.4.2算法和程序103

5.5小结105

讨论小课堂5106

习题5106

第6章 树与二叉树108

6.1树、二叉树的概念及术语108

6.1.1树的定义108

6.1.2树的基本操作110

6.1.3树的表示方式110

6.1.4树的存储结构111

6.2二叉树112

6.2.1二叉树的定义112

6.2.2二叉树的重要性质112

6.2.3二叉树的存储结构114

6.3二叉树的遍历115

6.3.1先序遍历116

6.3.2中序遍历117

6.3.3后序遍历117

6.3.4按层遍历118

6.3.5非递归遍历算法118

6.3.6二叉树的建立121

6.3.7二叉树遍历的应用举例122

6.4二叉树与树、森林的转换123

6.4.1树与二叉树的转换124

6.4.2森林与二叉树的转换124

6.5树的遍历126

6.5.1一般树的遍历126

6.5.2森林的遍历127

6.6二叉树的应用128

6.6.1哈夫曼树128

6.6.2哈夫曼树的构造128

6.6.3哈夫曼树的实现算法129

6.6.4哈夫曼编码131

6.7小结131

讨论小课堂6132

习题6132

第7章图134

7.1图的基本概念134

7.1.1图的定义134

7.1.2图的术语136

7.1.3图的基本操作137

7.2图的存储结构138

7.2.1图的邻接矩阵138

7.2.2邻接矩阵表示法的C语言类型描述139

7.2.3邻接矩阵表示下的基本操作的实现140

7.2.4图的邻接链表141

7.2.5图的邻接表表示法的C语言类型描述143

7.2.6邻接表表示下基本操作的实现144

7.3图的遍历与图的连通性146

7.3.1图的深度优先遍历146

7.3.2图的广度优先遍历148

7.3.3非连通图和连通分量150

7.4图的最小生成树150

7.4.1最小生成树的基本概念150

7.4.2普里姆(Prim)算法151

7.4.3克鲁斯卡尔(Kruskal)算法153

7.5最短路径154

7.5.1从某顶点到其余各顶点的最短路径155

7.5.2每对顶点之间的最短路径157

7.6拓扑排序与关键路径159

7.6.1拓扑排序160

7.6.2关键路径163

7.7图的应用168

7.7.1图在路由器寻径中的应用168

7.7.2图在物流信息系统中的应用169

7.8小结169

讨论小课堂7170

习题7170

第8章 查找172

8.1查找的基本概念172

8.2静态查找表173

8.2.1顺序表的查找173

8.2.2有序表的折半查找174

8.2.3索引顺序表查找177

8.3动态查找表178

8.3.1二叉排序树178

8.3.2平衡二叉树184

8.4案例分析191

8.4.1直方图问题191

8.4.2箱子装载问题192

8.5小结194

讨论小课堂8194

习题8195

第9章 排序196

9.1排序的基本概念196

9.2插入排序197

9.2.1直接插入排序197

9.2.2折半插入排序198

9.2.3希尔排序198

9.3交换排序200

9.3.1冒泡排序200

9.3.2快速排序201

9.4选择排序204

9.4.1简单选择排序204

9.4.2堆排序205

9.5归并排序208

9.6基数排序210

9.7小结213

讨论小课堂9214

习题9215

第10章 索引结构与散列217

10.1静态索引结构217

10.1.1索引表217

10.1.2索引表查找217

10.2动态索引结构(B一树和B+树)219

10.2.1 B一树的定义220

10.2.2 B一树的运算221

10.2.3 B+树223

10.3键树及Trie树224

10.3.1键树的定义224

10.3.2双链树225

10.3.3 Trie树226

10.4散列表及其查找227

10.4.1哈希表与哈希函数227

10.4.2构造哈希函数的常用方法228

10.4.3解决冲突的主要方法230

10.4.4哈希查找的性能分析234

10.5小结234

讨论小课堂10235

习题10235

附录 上机实验指导238

第1部分 上机实验要求及规范238

第2部分 实验部分239

实验1复数ADT及其实现239

实验2线性表241

实验3栈和队列248

实验4串253

实验5数组255

实验6树与二叉树257

实验7图261

实验8查找265

实验9排序267

实验10哈希查找272

参考文献275

热门推荐