图书介绍
算法基础PDF|Epub|txt|kindle电子书版本网盘下载
- (美)罗德·斯蒂芬斯(Rod Stephens)著 著
- 出版社: 北京:机械工业出版社
- ISBN:9787111560920
- 出版时间:2017
- 标注页数:402页
- 文件大小:59MB
- 文件页数:418页
- 主题词:电子计算机-算法理论
PDF下载
下载说明
算法基础PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 算法基础知识1
1.1方法1
1.2算法和数据结构2
1.3伪代码2
1.4算法的特点4
1.4.1大O符号5
1.4.2常见的运行时间函数7
1.4.3可视化函数12
1.5实际因素12
1.6总结13
练习13
第2章 数值算法16
2.1随机化数据16
2.1.1随机数生成16
2.1.2随机化数组20
2.1.3生成不均匀分布21
2.2寻找最大公约数21
2.3求幂运算23
2.4有关素数的运算24
2.4.1寻找素数因子24
2.4.2寻找素数26
2.4.3素性测试27
2.5进行数值积分28
2.5.1矩形规则28
2.5.2梯形规则29
2.5.3自适应求积30
2.5.4蒙特卡罗积分32
2.6查找零32
2.7总结34
练习34
第3章 链表36
3.1基本概念36
3.2单链表37
3.2.1遍历链表37
3.2.2查找单元格37
3.2.3使用哨兵38
3.2.4在开头添加单元格39
3.2.5在结尾添加单元格40
3.2.6在某个单元格后插入单元格40
3.2.7删除单元格41
3.3双向链表42
3.4有序链表43
3.5链表算法44
3.5.1复制链表44
3.5.2链表的插入排序45
3.6链表的选择排序46
3.7多线程链表47
3.8循环链表48
3.8.1标记单元格49
3.8.2使用散列表50
3.8.3链表回溯51
3.8.4反转链表51
3.8.5乌龟和兔子53
3.8.6双向链表中的循环问题55
3.9总结55
练习55
第4章 数组57
4.1基本概念57
4.2一维数组58
4.2.1查找元素58
4.2.2查找最大值、最小值、平均值59
4.2.3插入元素60
4.2.4移除元素61
4.3非零下界61
4.3.1二维数组61
4.3.2多维数组62
4.4三角形数组64
4.5稀疏数组66
4.5.1找到行或列67
4.5.2获取值68
4.5.3设置值69
4.5.4删除值71
4.6矩阵72
4.7总结74
练习74
第5章 栈和队列76
5.1栈76
5.1.1栈的链表实现76
5.1.2栈的数组实现77
5.1.3双向栈78
5.1.4栈的算法79
5.2队列84
5.2.1队列的链表实现84
5.2.2队列的数组实现85
5.2.3专用队列86
5.3总结87
练习87
第6章 排序89
6.1时间复杂度为O(N2)的算法89
6.1.1数组中的插入排序89
6.1.2数组中的选择排序90
6.1.3冒泡排序91
6.2时间复杂度为O(N logN)的算法93
6.2.1堆排序93
6.2.2快速排序98
6.2.3归并排序103
6.3时间复杂度为亚O(N logN)的算法105
6.3.1计数排序106
6.3.2桶排序107
6.4总结108
练习108
第7章 搜索110
7.1线性搜索110
7.2二分搜索111
7.3插值搜索112
7.4总结113
练习113
第8章 散列表114
8.1散列表的基础知识114
8.2链115
8.3开放寻址116
8.3.1删除记录117
8.3.2线性探测118
8.3.3二次探测119
8.3.4伪随机探测120
8.3.5双散列120
8.3.6有序散列121
8.4总结122
练习123
第9章 递归125
9.1基础算法125
9.1.1阶乘125
9.1.2斐波那契数127
9.1.3汉诺塔128
9.2图算法130
9.2.1科赫曲线130
9.2.2希尔伯特曲线131
9.2.3谢尔宾斯基曲线132
9.2.4垫片134
9.3回溯算法134
9.3.1八皇后问题136
9.3.2骑士巡游138
9.4选择与排列140
9.4.1循环选择140
9.4.2重复选择141
9.4.3不重复选择142
9.4.4元素可重复的排列143
9.4.5元素不重复的排列144
9.5消去递归145
9.5.1尾递归的消除145
9.5.2存储中间值146
9.5.3一般递归的消除148
9.6总结150
练习151
第10章树153
10.1树的术语153
10.2二叉树属性155
10.3树的表示157
10.3.1建立树的通用方法157
10.3.2构造完全树159
10.4树的遍历160
10.4.1前序遍历160
10.4.2中序遍历162
10.4.3后序遍历163
10.4.4深度优先遍历164
10.4.5遍历的运行时间164
10.5排序树165
10.5.1添加结点165
10.5.2查找结点166
10.5.3删除结点167
10.6线索树168
10.6.1建立线索树169
10.6.2使用线索树171
10.7特化树算法172
10.7.1动物游戏172
10.7.2表达式求值173
10.7.3四叉树175
10.7.4 Trie树179
10.8总结182
练习182
第11章 平衡树185
11.1 AVL树185
11.1.1添加值185
11.1.2删除值187
11.2 2-3树187
11.2.1添加值188
11.2.2删除值189
11.3 B树191
11.3.1添加值191
11.3.2删除值192
11.4平衡树变体193
11.4.1自上而下的B树193
11.4.2 B+树193
11.5总结194
练习195
第12章 决策树196
12.1游戏搜索树196
12.1.1极小化极大值算法197
12.1.2初始步骤和反应199
12.1.3启发式游戏树200
12.2搜索通用决策树201
12.2.1优化问题202
12.2.2穷举搜索202
12.2.3分支界限203
12.2.4决策树的启发式搜索205
12.2.5其他决策树问题209
12.3总结212
练习195
第13章 基本网络算法214
13.1网络术语214
13.2网络的表示方法216
13.3网络的遍历218
13.3.1深度优先遍历218
13.3.2广度优先遍历220
13.3.3连通性测试221
13.3.4生成树223
13.3.5最小生成树224
13.4寻找路径225
13.4.1寻找任一路径225
13.4.2标签设置最短路径225
13.4.3标签校正最短路径227
13.4.4任意两点间最短路径228
13.5总结232
练习232
第14章 更多的网络算法234
14.1拓扑排序234
14.2回路检测236
14.3地图着色237
14.3.1两色着色237
14.3.2三色着色238
14.3.3四色着色239
14.3.4五色着色239
14.3.5其他地图着色算法241
14.4最大流242
14.4.1工作分配243
14.4.2最小割244
14.5总结245
练习246
第15章 字符串算法247
15.1括号匹配247
15.1.1求算术表达式248
15.1.2构建解析树248
15.2模式匹配249
15.2.1DFA249
15.2.2为正则表达式建立DFA251
15.2.3 NFA252
15.3字符串搜索253
15.4计算编辑距离256
15.5总结258
练习258
第16章 密码学260
16.1术语260
16.2换位密码261
16.2.1行/列换位261
16.2.2列换位262
16.2.3路由加密算法263
16.3替换密码264
16.3.1凯撒替换264
16.3.2维吉尼亚密码265
16.3.3简单替换密码266
16.3.4一次性密码本266
16.4分组密码267
16.4.1代换-置换网络267
16.4.2 Feistel密码268
16.5公钥加密和RSA269
16.5.1欧拉函数270
16.5.2在取模运算下的乘法逆元素270
16.5.3一个RSA的例子270
16.5.4现实思考271
16.6加密技术的其他用途271
16.7总结272
练习273
第17章 复杂性理论274
17.1符号274
17.2复杂性分类275
17.3归约277
17.3.1 3SAT278
17.3.2二分图匹配278
17.4 NP难问题279
17.5检测、报告和优化问题279
17.5.1检测≤p报告279
17.5.2报告≤p优化280
17.5.3报告≤p检测280
17.5.4优化≤p报告280
17.6 NP完全问题281
17.7总结282
练习283
第18章 分布式程序设计284
18.1并行的种类284
18.1.1脉动阵列284
18.1.2分布式计算286
18.1.3多CPU的处理287
18.1.4竞争条件287
18.1.5死锁290
18.1.6量子计算291
18.2分布式算法291
18.2.1调试分布式算法292
18.2.2高度并行算法292
18.2.3归并排序293
18.2.4哲学家进餐294
18.2.5两个将军问题296
18.2.6拜占庭将军297
18.2.7一致性298
18.2.8领导人选举301
18.2.9快照301
18.2.10时钟同步302
18.3总结303
练习303
第19章 面试难题305
19.1面试难题提问306
19.2面试难题回答307
19.3总结309
练习311
附录A算法概念综述312
附录B练习解答320
索引371