作者使用Python和图画来解释算法,找了好久才找到PDF版本,末尾附百度云链接~
作者〔美〕Aditya Bhargava
译者袁国忠
类别 出版 / 非虚构
出版社人民邮电出版社 / 2017-03
提供方图灵社区
字数约 72,000 字
ISBN9787115447630
作品简介
本书示例丰富,图文并茂,以让人容易理解的方式阐释了算法,旨在帮助程序员在日常项目中更好地发挥算法的能量。书中的前三章将帮助你打下基础,带你学习二分查找、大O表示法、两种基本的数据结构以及递归等。余下的篇幅将主要介绍应用广泛的算法,具体内容包括:面对具体问题时的解决技巧,比如,何时采用贪婪算法或动态规划;散列表的应用;图算法;K最近邻算法。
Aditya Bhargava,软件工程师,兼具计算机科学和美术方面的教育背景,在adit.io撰写编程方面的博客。
作品目录
- 前言
- 致谢
- 关于本书
- 第 1 章 算法简介
- 1.1 引言
- 1.2 二分查找
- 1.3 大O表示法
- 1.4 小结
- 第 2 章 选择排序
- 2.1 内存的工作原理
- 2.2 数组和链表
- 2.3 选择排序
- 2.4 小结
- 第 3 章 递归
- 3.1 递归
- 3.2 基线条件和递归条件
- 3.3 栈
- 3.4 小结
- 第 4 章 快速排序
- 4.1 分而治之
- 4.2 快速排序
- 4.3 再谈大O表示法
- 4.4 小结
- 第 5 章 散列表
- 5.1 散列函数
- 5.2 应用案例
- 5.3 冲突
- 5.4 性能
- 5.5 小结
- 第 6 章 广度优先搜索
- 6.1 图简介
- 6.2 图是什么
- 6.3 广度优先搜索
- 6.4 实现图
- 6.5 实现算法
- 6.6 小结
- 第 7 章 狄克斯特拉算法
- 7.1 使用狄克斯特拉算法
- 7.2 术语
- 7.3 换钢琴
- 7.4 负权边
- 7.5 实现
- 7.6 小结
- 第 8 章 贪婪算法
- 8.1 教室调度问题
- 8.2 背包问题
- 8.3 集合覆盖问题
- 8.4 NP完全问题
- 8.5 小结
- 第 9 章 动态规划
- 9.1 背包问题
- 9.2 背包问题FAQ
- 9.3 最长公共子串
- 9.4 小结
- 第 10 章 K最近邻算法
- 10.1 橙子还是柚子
- 10.2 创建推荐系统
- 10.3 机器学习简介
- 10.4 小结
- 第 11 章 接下来如何做
- 11.1 树
- 11.2 反向索引
- 11.3 傅里叶变换
- 11.4 并行算法
- 11.5 MapReduce
- 11.6 布隆过滤器和HyperLogLog
- 11.7 SHA算法
- 11.8 局部敏感的散列算法
- 11.9 Diffie-Hellman密钥交换
- 11.10 线性规划
- 11.11 结语
- 练习答案
百度云链接:https://pan.baidu.com/s/1u1mSc5dGlo-vgbc7zuU2QA&shfl=sharepset
提取码:y0m2
原文地址:https://www.cnblogs.com/frisk/p/11707637.html
时间: 2024-08-01 11:03:02