当前位置:主页 > 书籍配套资源 > 算法配套资源
《趣学算法》源码

《趣学算法》源码

  • 更新:2022-03-25
  • 大小:16.2 MB
  • 类别:算法
  • 作者:陈小玉
  • 出版:人民邮电出版社
  • 格式:PDF

  • 资源介绍
  • 相关推荐

编辑推荐

本书从算法之美娓娓道来,没有高深的原理,也没有枯燥的公式,通过趣味故事引出算法问题,包含50多个实例及完美图解,结合学生提问,分析算法本质,并给出代码实现的详细过程和运行结果。

本书的特色和价值:

(1)实例丰富,通俗易懂
(2)完美图解,简单有趣
(3)深入浅出,透析本质
(4)实战演练,循序渐进
(5)网络资源,技术支持

内容简介

本书内容按照算法策略分为7章。第1章从算法之美、简单小问题、趣味故事引入算法概念、时间复杂度、空间复杂度的概念和计算方法,以及算法设计的爆炸性增量问题,使读者体验算法的奥妙。第2~7章介绍经典算法的设计策略、实战演练、算法分析及优化拓展,分别讲解贪心算法、分治算法、动态规划、回溯法、分支限界法、线性规划和网络流。每一种算法都有4~10个实例,共50个大型实例,包括经典的构造实例和实际应用实例,按照问题分析、算法设计、完美图解、伪代码详解、实战演练、算法解析及优化拓展的流程,讲解清楚且通俗易懂。附录介绍常见的数据结构及算法改进用到的相关知识,包括sort函数、优先队列、邻接表、并查集、四边不等式、排列树、贝尔曼规则、增广路复杂性计算、zui大流zui小割定理等内容。
本书可作为程序员的学习用书,也适合从未有过编程经验但又对算法有强烈兴趣的初学者使用,同时也可作为高等院校计算机、数学及相关专业的师生用书和培训学校的教材。

作者简介

陈小玉,副教授,硕士,高级程序员,研究方向:智能计算、机器学习与数据挖掘。主讲《数据结构》、《算法设计与分析》、《人工智能》等专业课程,并发表过多篇计算机专业论文和项目。

目录

  • 第1章 算法之美t1
  • 1.1 打开算法之门t2
  • 1.2 妙不可言—算法复杂性t2
  • 1.3 美不胜收—魔鬼序列t9
  • 1.4 灵魂之交—马克思手稿中的数学题t16
  • 1.5 算法学习瓶颈t21
  • 1.6 你怕什么t22
  • 第2章 贪心算法t24
  • 2.1 人之初,性本贪t25
  • 2.1.1 贪心本质t25
  • 2.1.2 贪亦有道t26
  • 2.1.3 贪心算法秘籍t26
  • 2.2 加勒比海盗船—最优装载问题t27
  • 2.2.1 问题分析t27
  • 2.2.2 算法设计t28
  • 2.2.3 完美图解t28
  • 2.2.4 伪代码详解t29
  • 2.2.5 实战演练t30
  • 2.2.6 算法解析及优化拓展t31
  • 2.3 阿里巴巴与四十大盗—背包问题t32
  • 2.3.1 问题分析t32
  • 2.3.2 算法设计t33
  • 2.3.3 完美图解t33
  • 2.3.4 伪代码详解t34
  • 2.3.5 实战演练t35
  • 2.3.6 算法解析及优化拓展t36
  • 2.4 高级钟点秘书—会议安排t37
  • 2.4.1 问题分析t38
  • 2.4.2 算法设计t39
  • 2.4.3 完美图解t40
  • 2.4.4 伪代码详解t41
  • 2.4.5 实战演练t42
  • 2.4.6 算法解析及优化拓展t45
  • 2.5 一场说走就走的旅行—最短路径t45
  • 2.5.1 问题分析t46
  • 2.5.2 算法设计t46
  • 2.5.3 完美图解t47
  • 2.5.4 伪代码详解t51
  • 2.5.5 实战演练t52
  • 2.5.6 算法解析及优化拓展t55
  • 2.6 神秘电报密码—哈夫曼编码t59
  • 2.6.1 问题分析t60
  • 2.6.2 算法设计t62
  • 2.6.3 完美图解t63
  • 2.6.4 伪代码详解t65
  • 2.6.5 实战演练t74
  • 2.6.6 算法解析及优化拓展t77
  • 2.7 沟通无限校园网—最小生成树t77
  • 2.7.1 问题分析t78
  • 2.7.2 算法设计t79
  • 2.7.3 完美图解t80
  • 2.7.4 伪代码详解t87
  • 2.7.5 实战演练t88
  • 2.7.6 算法解析t90
  • 2.7.7 算法优化拓展t90
  • 第3章 分治法t99
  • 3.1 山高皇帝远t100
  • 3.1.1 治众如治寡—分而治之t100
  • 3.1.2 天时地利人和—分治算法要素t100
  • 3.1.3 分治算法秘籍t101
  • 3.2 猜数游戏—二分搜索技术t101
  • 3.2.1 问题分析t101
  • 3.2.2 算法设计t102
  • 3.2.3 完美图解t102
  • 3.2.4 伪代码详解t103
  • 3.2.5 实战演练t104
  • 3.2.6 算法解析与拓展t105
  • 3.3 合久必分,分久必合—合并排序t107
  • 3.3.1 问题分析t108
  • 3.3.2 算法设计t108
  • 3.3.3 完美图解t108
  • 3.3.4 伪代码详解t108
  • 3.3.5 实战演练t111
  • 3.3.6 算法解析与拓展t112
  • 3.4 兵贵神速—快速排序t113
  • 3.4.1 问题分析t114
  • 3.4.2 算法设计t115
  • 3.4.3 完美图解t116
  • 3.4.4 伪代码详解t117
  • 3.4.5 实战演练t118
  • 3.4.6 算法解析与拓展t120
  • 3.5 效率至上—大整数乘法t124
  • 3.5.1 问题分析t124
  • 3.5.2 算法设计t125
  • 3.5.3 完美图解t126
  • 3.5.4 伪代码详解t128
  • 3.5.5 实战演练t132
  • 3.5.6 算法解析与拓展t135
  • 3.6 分治算法复杂度求解秘籍t137
  • 第4章 动态规划t141
  • 4.1 神奇的兔子序列t142
  • 4.2 动态规划基础t143
  • 4.2.1 算法思想t143
  • 4.2.2 算法要素t143
  • 4.2.3 解题秘籍t143
  • 4.3 孩子有多像爸爸—最长的公共子序列t145
  • 4.3.1 问题分析t145
  • 4.3.2 算法设计t147
  • 4.3.3 完美图解t148
  • 4.3.4 伪代码详解t152
  • 4.3.5 实战演练t153
  • 4.3.6 算法解析及优化拓展t155
  • 4.4 DNA基因鉴定—编辑距离t156
  • 4.4.1 问题分析t156
  • 4.4.2 算法设计t158
  • 4.4.3 完美图解t159
  • 4.4.4 伪代码详解t161
  • 4.4.5 实战演练t162
  • 4.4.6 算法解析及优化拓展t163
  • 4.5 长江一日游—游艇租赁t164
  • 4.5.1 问题分析t164
  • 4.5.2 算法设计t166
  • 4.5.3 完美图解t166
  • 4.5.4 伪代码详解t170
  • 4.5.5 实战演练t171
  • 4.5.6 算法解析及优化拓展t172
  • 4.6 快速计算—矩阵连乘t172
  • 4.6.1 问题分析t173
  • 4.6.2 算法设计t176
  • 4.6.3 完美图解t176
  • 4.6.4 伪代码详解t180
  • 4.6.5 实战演练t181
  • 4.6.6 算法解析及优化拓展t182
  • 4.7 切呀切披萨—最优三角剖分t183
  • 4.7.1 问题分析t183
  • 4.7.2 算法设计t186
  • 4.7.3 完美图解t187
  • 4.7.4 伪代码详解t191
  • 4.7.5 实战演练t192
  • 4.7.6 算法解析及优化拓展t194
  • 4.8 小石子游戏—石子合并t194
  • 4.8.1 问题分析t195
  • 4.8.2 算法设计t197
  • 4.8.3 完美图解t198
  • 4.8.4 伪代码详解t203
  • 4.8.5 实战演练t205
  • 4.8.6 算法解析及优化拓展t206
  • 4.9 大卖场购物车1—0-1背包问题t209
  • 4.9.1 问题分析t210
  • 4.9.2 算法设计t211
  • 4.9.3 完美图解t212
  • 4.9.4 伪代码详解t216
  • 4.9.5 实战演练t217
  • 4.9.6 算法解析及优化拓展t218
  • 4.10 快速定位—最优二叉搜索树t220
  • 4.10.1 问题分析t221
  • 4.10.2 算法设计t225
  • 4.10.3 完美图解t226
  • 4.10.4 伪代码详解t239
  • 4.10.5 实战演练t241
  • 4.10.6 算法解析及优化拓展t243
  • 4.11 动态规划算法秘籍t246
  • 第5章 回溯法t248
  • 5.1 回溯法基础t249
  • 5.1.1 算法思想t249
  • 5.1.2 算法要素t249
  • 5.1.3 解题秘籍t251
  • 5.2 大卖场购物车2—0-1背包问题t252
  • 5.2.1 问题分析t252
  • 5.2.2 算法设计t253
  • 5.2.3 完美图解t255
  • 5.2.4 伪代码详解t258
  • 5.2.5 实战演练t259
  • 5.2.6 算法解析t262
  • 5.2.7 算法优化拓展t262
  • 5.3 部落护卫队—最大团t265
  • 5.3.1 问题分析t266
  • 5.3.2 算法设计t267
  • 5.3.3 完美图解t269
  • 5.3.4 伪代码详解t274
  • 5.3.5 实战演练t275
  • 5.3.6 算法解析及优化拓展t277
  • 5.4 地图调色板—地图着色t278
  • 5.4.1 问题分析t278
  • 5.4.2 算法设计t279
  • 5.4.3 完美图解t280
  • 5.4.4 伪代码详解t285
  • 5.4.5 实战演练t286
  • 5.4.6 算法解析及优化拓展t288
  • 5.5 一山不容二虎—n皇后问题t289
  • 5.5.1 问题分析t290
  • 5.5.2 算法设计t291
  • 5.5.3 完美图解t292
  • 5.5.4 伪代码详解t300
  • 5.5.5 实战演练t301
  • 5.5.6 算法解析及优化拓展t303
  • 5.6 机器零件加工—最优加工顺序t305
  • 5.6.1 问题分析t305
  • 5.6.2 算法设计t308
  • 5.6.3 完美图解t308
  • 5.6.4 伪代码详解t313
  • 5.6.5 实战演练t314
  • 5.6.6 算法解析t316
  • 5.6.7 算法优化拓展t316
  • 5.7 奇妙之旅1—旅行商问题t319
  • 5.7.1 问题分析t319
  • 5.7.2 算法设计t320
  • 5.7.3 完美图解t321
  • 5.7.4 伪代码详解t330
  • 5.7.5 实战演练t331
  • 5.7.6 算法解析及优化拓展t333
  • 5.8 回溯法算法秘籍t336
  • 第6章 分支限界法t338
  • 6.1 横行天下—广度优先t339
  • 6.1.1 算法思想t340
  • 6.1.2 算法步骤t340
  • 6.1.3 解题秘籍t341
  • 6.2 大卖场购物车3—0-1背包问题t341
  • 6.2.1 问题分析t342
  • 6.2.2 算法设计t343
  • 6.2.3 完美图解t345
  • 6.2.4 伪代码详解t350
  • 6.2.5 实战演练t352
  • 6.2.6 算法解析t355
  • 6.2.7 算法优化拓展—优先队列式分支限界法t356
  • 6.3 奇妙之旅2—旅行商问题t366
  • 6.3.1 问题分析t366
  • 6.3.2 算法设计t367
  • 6.3.3 完美图解t368
  • 6.3.4 伪代码详解t371
  • 6.3.5 实战演练t373
  • 6.3.6 算法解析t376
  • 6.3.7 算法优化拓展t377
  • 6.4 铺设电缆—最优工程布线t385
  • 6.4.1 问题分析t386
  • 6.4.2 算法设计t386
  • 6.4.3 完美图解t387
  • 6.4.4 伪代码详解t399
  • 6.4.5 实战演练t400
  • 6.4.6 算法解析及优化拓展t403
  • 6.5 回溯法与分支限界法的异同t404
  • 第7章 线性规划网络流t405
  • 7.1 线性规划问题t406
  • 7.1.1 线性规划标准型t408
  • 7.1.2 单纯形算法图解t409
  • 7.1.3 解题秘籍t413
  • 7.1.4 练习t413
  • 7.2 工厂最大效益—单纯形算法t414
  • 7.2.1 问题分析t414
  • 7.2.2 完美图解t415
  • 7.2.3 伪代码详解t418
  • 7.2.4 实战演练t420
  • 7.2.5 算法解析及优化拓展t423
  • 7.3 最大网络流—最短增广路算法t424
  • 7.3.1 问题分析t424
  • 7.3.2 增广路算法t427
  • 7.3.3 完美图解t431
  • 7.3.4 伪代码详解t437
  • 7.3.5 实战演练t439
  • 7.3.6 算法解析t441
  • 7.3.7 算法优化拓展—重贴标签算法ISAPt442
  • 7.4 最小费用最大流—最小费用路算法t455
  • 7.4.1 问题分析t456
  • 7.4.2 算法设计t456
  • 7.4.3 完美图解t457
  • 7.4.4 伪代码详解t459
  • 7.4.5 实战演练t461
  • 7.4.6 算法解析t465
  • 7.4.7 算法优化拓展—消圈算法t466
  • 7.5 精明的老板—配对方案问题t468
  • 7.5.1 问题分析t468
  • 7.5.2 算法设计t469
  • 7.5.3 完美图解t469
  • 7.5.4 伪代码详解t470
  • 7.5.5 实战演练t471
  • 7.5.6 算法解析t475
  • 7.5.7 算法优化拓展—匈牙利算法t475
  • 7.6 国际会议交流—圆桌问题t480
  • 7.6.1 问题分析t481
  • 7.6.2 算法设计t482
  • 7.6.3 完美图解t482
  • 7.6.4 伪代码详解t484
  • 7.6.5 实战演练t485
  • 7.6.6 算法解析及优化拓展t489
  • 7.7 要考试啦—试题库问题t489
  • 7.7.1 问题分析t490
  • 7.7.2 算法设计t490
  • 7.7.3 完美图解t491
  • 7.7.4 伪代码详解t493
  • 7.7.5 实战演练t494
  • 7.7.6 算法解析及优化拓展t498
  • 7.8 太空实验计划—最大收益问题t499
  • 7.8.1 问题分析t499
  • 7.8.2 算法设计t500
  • 7.8.3 完美图解t502
  • 7.8.4 伪代码详解t505
  • 7.8.5 实战演练t506
  • 7.8.6 算法解析及优化拓展t510
  • 7.9 央视娱乐节目购物街—方格取数问题t511
  • 7.9.1 问题分析t511
  • 7.9.2 算法设计t512
  • 7.9.3 完美图解t513
  • 7.9.4 伪代码详解t514
  • 7.9.5 实战演练t516
  • 7.9.6 算法解析及优化拓展t520
  • 7.10 走着走着,就走到了西藏—旅游路线问题t521
  • 7.10.1 问题分析t521
  • 7.10.2 算法设计t523
  • 7.10.3 完美图解t523
  • 7.10.4 伪代码详解t525
  • 7.10.5 实战演练t528
  • 7.10.6 算法解析及优化拓展t532
  • 7.11 网络流问题解题秘籍t533
  • 附录A 特征方程和通项公式t534
  • 附录B sort函数t537
  • 附录C 优先队列t541
  • 附录D 邻接表t549
  • 附录E 并查集t555
  • 附录F 四边不等式t561
  • 附录G 排列树t565
  • 附录H 贝尔曼规则t579
  • 附录I 增广路中称为关键边的次数t582
  • 附录J 最大流最小割定理t585

资源下载

资源下载地址1:https://box.lenovo.com/l/31LCpJ

相关资源

网友留言