- ISBN:9787111687962
- 装帧:一般胶版纸
- 册数:暂无
- 重量:暂无
- 开本:16开
- 页数:264
- 出版时间:2021-09-01
- 条形码:9787111687962 ; 978-7-111-68796-2
本书特色
适读人群 :从事计算机科学相关领域的工程师、程序员以及想要培养和训练算法思维的IT专业人士、计算机相关专业的高校教师和学生◆各章自成体系,可以作为独立的学习单元(算法基础→经典算法思想→重要数据结构→常用算法),满足从 “菜鸟”向 “达人”进阶的的需求 零基础也能轻松掌握,自学算法的好搭档 ◆73个示意图,生动介绍算法执行过程 ◆全书包含40余道经典算法真题,每道题目均一题多解,深入剖析不同算法在性能方面的优劣 ◆免费提供立体化学习资源,包括16个章节核心知识点讲解视频,各类算法实现源代码、实例数据及运行结果
内容简介
本书以 Python 语言为平台,分四个部分介绍了算法的基本概念、五种经典的算法思想、重要的数据结构以及实践中常用的几种算法技术。除第 1 章和第 2 章外,书中每章内容都包括了基本概念、实现方式、具体应用以及达人修炼真题。每一种算法思想中的达人修炼真题都提供了相应的源代码,可供读者运行,从而达到理论与实践并重的目的。本书从算法基本分析到算法基本思想,再到具体应用及大量真题,内容全面,条理清楚,语言通俗。本书对计算机及相关专业本科生及研究生的面试、笔试将有所帮助;此外,计算机科学相关领域的工程师以及爱好者也可以将本书作为技术参考书籍,在需要时可查找所需算法的相关内容并从中得到启示;当然,对计算机科学感兴趣的高中生以及 IT 领域项目经理也可以阅读本书,从而开启算法世界的大门。
目录
**部分 算法基础/1
第 1 章 算法综述/2
1.1 算法在计算机系统中的作用/2
1.1.1 算法的定义/2
1.1.2 算法的地位/2
1.1.3 一个简单的算法/3
1.2 伪代码的约定/4
第 2 章 算法分析/6
2.1 精确效率分析/6
2.2 渐进效率分析/8
2.2.1 渐进记号/9
2.2.2 渐进记号的应用/10
2.3 递归式求解/15
第二部分 经典算法思想/17
第 3 章 递归与分治法/18
3.1 递归的概念/18
3.2 分治法/22
3.3 分治法的应用/25
3.4 达人修炼真题/26
第 4 章 动态规划算法/50
4.1 动态规划基础/50
4.1.1 动态规划基本思想/50
4.1.2 动态规划算法举例——*长公共子序列/50
4.2 动态规划算法分析/53
4.2.1 *优子结构/54
Python 算法从菜鸟到达人
VI
4.2.2 重叠子问题/54
4.3 动态规划算法的应用/55
4.3.1 0-1 背包问题/55
4.3.2 石子归并/56
4.3.3 常用动态规划类问题/59
4.4 达人修炼真题/60
第 5 章 贪心算法/79
5.1 贪心算法基础/79
5.1.1 贪心算法基本思想/79
5.1.2 贪心算法举例——装载问题/79
5.2 贪心算法的分析/80
5.3 贪心算法的应用/81
5.3.1 普通背包问题/81
5.3.2 活动安排问题/83
5.3.3 纪念品分组/85
5.4 达人修炼真题/87
第 6 章 回溯法/91
6.1 回溯法基本概念与算法框架/91
6.1.1 基本思路/91
6.1.2 回溯法的实现/93
6.2 回溯法的应用/94
6.2.1 0-1 背包问题/94
6.2.2 八皇后问题/96
6.2.3 一摞烙饼的排序/97
6.3 达人修炼真题/100
第 7 章 分支界限法/103
7.1 分支界限法概念与算法框架/103
7.1.1 分支界限法基本思想/103
7.1.2 算法框架与分析/104
7.1.3 一个简单的例子(0-1 背包问题)/106
7.2 分支界限法的应用/108
7.2.1 TSP 问题/108
7.2.2 多段图的*短路径问题/111
7.2.3 任务分配问题/113
7.3 达人修炼真题/116
第三部分 重要数据结构/121
第 8 章 栈与队列/122
8.1 栈/122
目录
VII
8.2 队列/124
8.3 达人修炼真题/128
第 9 章 链表/142
9.1 链表概述/142
9.2 链表的操作/143
9.3 达人修炼真题/145
第 10 章 树与二叉树/152
10.1 树的概念与定义/152
10.1.1 基本概念/152
10.1.2 树的表示/153
10.2 二叉树/154
10.2.1 基本概念/154
10.2.2 二叉树的存储结构/155
10.2.3 遍历二叉树和线索二叉树/156
10.3 树、二叉树和森林之间的关系/159
10.4 达人修炼真题/164
第 11 章 哈希表/170
11.1 哈希表概述/170
11.2 哈希表的应用/173
11.3 达人修炼真题/175
第 12 章 并查集/185
12.1 并查集基本思想/185
12.1.1 并查集概念/186
12.1.2 并查集的实现/186
12.1.3 带权并查集/189
12.2 并查集的应用/191
12.2.1 食物链/191
12.2.2 Kruskal *小生成树算法/194
12.3 达人修炼真题/195
第 13 章 位图/199
13.1 位图基本概念/199
13.2 位图法的应用/203
13.2.1 位运算常见应用/204
13.2.2 位图法在大数据处理中的应用/207
13.3 达人修炼真题/209
第四部分 常用算法/213
第 14 章 排序算法/214
14.1 插入排序/214
Python 算法从菜鸟到达人
VIII
14.2 选择排序/218
14.3 交换排序/222
14.4 归并排序/226
14.5 桶排序/基数排序/228
14.6 达人修炼真题/231
第 15 章 查找算法/235
15.1 基本概念/235
15.2 静态查找/236
15.3 动态查找/239
15.4 哈希查找/244
15.5 达人修炼真题/244
第 16 章 字符串匹配算法/250
16.1 简单字符串匹配/250
16.2 KMP 算法/251
16.3 BM 算法/254
16.4 SUNDAY 算法/255
16.5 达人修炼真题/255
附录/263
作者简介
黄斐然,博士,暨南大学信息科学技术学院/网络空间安全学院硕士生导师。主持国家自然科学基金青年基金项目1项、广东省自然基金面上项目1项;申请/授权国家发明专利5项;发表学术会议与期刊论文20余篇,其中包括CCF-A类论文IEEE TIP、ACM MM、CIKM、IEEETITS、ACM TOMM,以及中科院一区期刊IEEE TCYB、IEEE TNNLS;在学术兼职方面,担任SCI期刊CAEE副主编、EI期刊JMUE编委,受邀担任AAAI、IJCAI、IEEE TPAMI、 IEEE TNNLS、IEEE TMM、IEEE TCSVT等会议和期刊的审稿人。
-
有限与无限的游戏:一个哲学家眼中的竞技世界
¥37.4¥68.0 -
全图解零基础word excel ppt 应用教程
¥12.0¥48.0 -
机器学习
¥59.4¥108.0 -
深度学习的数学
¥43.5¥69.0 -
智能硬件项目教程:基于ARDUINO(第2版)
¥37.7¥65.0 -
硅谷之火-人与计算机的未来
¥14.3¥39.8 -
元启发式算法与背包问题研究
¥38.2¥49.0 -
AI虚拟数字人:商业模式+形象创建+视频直播+案例应用
¥62.9¥89.8 -
UNIX环境高级编程(第3版)
¥164.9¥229.0 -
剪映AI
¥52.8¥88.0 -
深度学习高手笔记 卷2:经典应用
¥90.9¥129.8 -
纹样之美:中国传统经典纹样速查手册
¥77.4¥109.0 -
UG NX 12.0数控编程
¥24.8¥45.0 -
MATLAB计算机视觉与深度学习实战(第2版)
¥90.9¥128.0 -
界面交互设计理论研究
¥30.8¥56.0 -
UN NX 12.0多轴数控编程案例教程
¥25.8¥38.0 -
微机组装与系统维护技术教程(第二版)
¥37.8¥43.0 -
明解C语言:实践篇
¥62.9¥89.8 -
Linux服务器架设实战(Linux典藏大系)
¥84.5¥119.0 -
PREMIERE PRO 2023全面精通:视频剪辑+颜色调整+转场特效+字幕制作+案例实战
¥69.3¥99.0