图书介绍

算法设计与分析2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

算法设计与分析
  • 李春葆主编;李筱驰,蒋林,陈良臣,喻丹丹编著 著
  • 出版社: 北京:清华大学出版社
  • ISBN:9787302500988
  • 出版时间:2018
  • 标注页数:445页
  • 文件大小:73MB
  • 文件页数:459页
  • 主题词:电子计算机-算法设计-高等学校-教材;电子计算机-算法分析-高等学校-教材

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.1.3 算法和数据结构5

1.1.4 算法设计的基本步骤6

1.2 算法分析6

1.2.1 算法时间复杂度分析6

1.2.2 算法空间复杂度分析13

1.3 算法设计工具——STL15

1.3.1 STL概述15

1.3.2 常用的STL容器18

1.3.3 STL在算法设计中的应用30

1.4 练习题38

1.5 上机实验题39

1.6 在线编程题39

第2章 递归算法设计技术43

2.1 什么是递归44

2.1.1 递归的定义44

2.1.2 何时使用递归44

2.1.3 递归模型46

2.1.4 递归算法的执行过程47

2.2 递归算法设计52

2.2.1 递归与数学归纳法52

2.2.2 递归算法设计的一般步骤53

2.2.3 递归数据结构及其递归算法设计54

2.2.4 基于归纳思想的递归算法设计60

2.3 递归算法设计示例63

2.3.1 简单选择排序和冒泡排序63

2.3.2 求解n皇后问题66

2.4 递归算法转化为非递归算法68

2.4.1 用循环结构替代递归过程68

2.4.2 用栈消除递归过程69

2.5 递推式的计算74

2.5.1 用特征方程求解递归方程74

2.5.2 用递归树求解递归方程77

2.5.3 用主方法求解递归方程78

2.6 练习题78

2.7 上机实验题80

2.8 在线编程题81

第3章 分治法83

3.1 分治法概述84

3.1.1 分治法的设计思想84

3.1.2 分治法的求解过程84

3.2 求解排序问题85

3.2.1 快速排序86

3.2.2 归并排序88

3.3 求解查找问题91

3.3.1 查找最大和次大元素91

3.3.2 折半查找93

3.3.3 寻找一个序列中第k小的元素94

3.3.4 寻找两个等长有序序列的中位数96

3.4 求解组合问题101

3.4.1 求解最大连续子序列和问题101

3.4.2 求解棋盘覆盖问题103

3.4.3 求解循环日程安排问题106

3.5 求解大整数乘法和矩阵乘法问题108

3.5.1 求解大整数乘法问题108

3.5.2 求解矩阵乘法问题111

3.6 并行计算简介112

3.6.1 并行计算概述112

3.6.2 并行计算模型112

3.6.3 快速排序的并行算法113

3.7 练习题114

3.8 上机实验题116

3.9 在线编程题117

第4章 蛮力法120

4.1 蛮力法概述121

4.2 蛮力法的基本应用122

4.2.1 采用直接穷举思路的一般格式122

4.2.2 简单选择排序和冒泡排序125

4.2.3 字符串匹配128

4.2.4 求解最大连续子序列和问题129

4.2.5 求解幂集问题132

4.2.6 求解简单0/1背包问题135

4.2.7 求解全排列问题137

4.2.8 求解任务分配问题139

4.3 递归在蛮力法中的应用141

4.3.1 用递归方法求解幂集问题141

4.3.2 用递归方法求解全排列问题142

4.3.3 用递归方法求解组合问题144

4.4 图的深度优先和广度优先遍历146

4.4.1 图的存储结构146

4.4.2 深度优先遍历148

4.4.3 广度优先遍历151

4.4.4 求解迷宫问题154

4.5 练习题158

4.6 上机实验题160

4.7 在线编程题160

第5章 回溯法163

5.1 回溯法概述164

5.1.1 问题的解空间164

5.1.2 什么是回溯法167

5.1.3 回溯法的算法框架及其应用168

5.1.4 回溯法与深度优先遍历的异同176

5.1.5 回溯法的时间分析177

5.2 求解0/1背包问题178

5.3 求解装载问题182

5.3.1 求解简单装载问题182

5.3.2 求解复杂装载问题185

5.4 求解子集和问题187

5.4.1 求子集和问题的解187

5.4.2 判断子集和问题是否存在解189

5.5 求解n皇后问题191

5.6 求解图的m着色问题193

5.7 求解任务分配问题196

5.8 求解活动安排问题198

5.9 求解流水作业调度问题201

5.10 练习题205

5.11 上机实验题206

5.12 在线编程题207

第6章 分枝限界法211

6.1 分枝限界法概述212

6.1.1 什么是分枝限界法212

6.1.2 分枝限界法的设计思想212

6.1.3 分枝限界法的时间性能215

6.2 求解0/1背包问题215

6.2.1 采用队列式分枝限界法求解216

6.2.2 采用优先队列式分枝限界法求解220

6.3 求解图的单源最短路径223

6.3.1 采用队列式分枝限界法求解223

6.3.2 采用优先队列式分枝限界法求解228

6.4 求解任务分配问题230

6.5 求解流水作业调度问题234

6.6 练习题238

6.7 上机实验题239

6.8 在线编程题240

第7章 贪心法242

7.1 贪心法概述243

7.1.1 什么是贪心法243

7.1.2 用贪心法求解的问题应具有的性质245

7.1.3 贪心法的一般求解过程245

7.2 求解活动安排问题246

7.3 求解背包问题251

7.4 求解最优装载问题256

7.5 求解田忌赛马问题257

7.6 求解多机调度问题260

7.7 哈夫曼编码263

7.8 求解流水作业调度问题272

7.9 练习题275

7.10 上机实验题277

7.11 在线编程题278

第8章 动态规划281

8.1 动态规划概述282

8.1.1 从求解斐波那契数列看动态规划法282

8.1.2 动态规划的原理283

8.1.3 动态规划求解的基本步骤289

8.1.4 动态规划与其他方法的比较290

8.2 求解整数拆分问题291

8.3 求解最大连续子序列和问题293

8.4 求解三角形最小路径问题296

8.5 求解最长公共子序列问题299

8.6 求解最长递增子序列问题303

8.7 求解编辑距离问题304

8.8 求解0/1背包问题307

8.9 求解完全背包问题312

8.10 求解资源分配问题314

8.11 求解会议安排问题318

8.12 滚动数组322

8.12.1 什么是滚动数组322

8.12.2 用滚动数组求解0/1背包问题323

8.13 练习题325

8.14 上机实验题327

8.15 在线编程题328

第9章 图算法设计334

9.1 求图的最小生成树335

9.1.1 最小生成树的概念335

9.1.2 用普里姆算法构造最小生成树335

9.1.3 克鲁斯卡尔算法337

9.2 求图的最短路径342

9.2.1 狄克斯特拉算法343

9.2.2 贝尔曼-福特算法348

9.2.3 SPFA算法351

9.2.4 弗洛伊德算法354

9.3 求解旅行商问题357

9.3.1 旅行商问题描述357

9.3.2 采用蛮力法求解TSP问题357

9.3.3 采用动态规划求解TSP问题360

9.3.4 采用回溯法求解TSP问题364

9.3.5 采用分枝限界法求解TSP问题367

9.3.6 采用贪心法求解TSP问题370

9.4 网络流371

9.4.1 相关概念371

9.4.2 求最大流373

9.4.3 割集与割量378

9.4.4 求最小费用最大流379

9.5 练习题388

9.6 上机实验题389

9.7 在线编程题389

第10章 计算几何392

10.1 向量运算393

10.1.1 向量的基本运算394

10.1.2 判断一个点是否在一个矩形内397

10.1.3 判断一个点是否在一条线段上398

10.1.4 判断两条线段是否平行398

10.1.5 判断两条线段是否相交399

10.1.6 判断一个点是否在多边形内400

10.1.7 求3个点构成的三角形的面积401

10.1.8 求一个多边形的面积401

10.2 求解凸包问题402

10.2.1 礼品包裹算法403

10.2.2 Graham扫描算法405

10.3 求解最近点对问题408

10.3.1 用蛮力法求最近点对408

10.3.2 用分治法求最近点对409

10.4 求解最远点对问题412

10.4.1 用蛮力法求最远点对413

10.4.2 用旋转卡壳法求最远点对413

10.5 练习题415

10.6 上机实验题416

10.7 在线编程题416

第11章 计算复杂性理论简介418

11.1 计算模型419

11.1.1 求解问题的分类419

11.1.2 图灵机模型419

11.2 P类和NP类问题424

11.3 NPC问题425

11.4 练习题426

第12章 概率算法和近似算法427

12.1 概率算法428

12.1.1 什么是概率算法428

12.1.2 蒙特卡罗类型概率算法429

12.1.3 拉斯维加斯类型概率算法431

12.1.4 舍伍德类型概率算法433

12.2 近似算法434

12.2.1 什么是近似算法434

12.2.2 求解旅行商问题的近似算法434

12.3 练习题438

12.4 上机实验题439

12.5 在线编程题439

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

参考文献445

热门推荐