书名:数据结构与算法图解
作者:[美]杰伊•温格罗
译者:袁志鹏
ISBN:9787115509000
出版社:人民邮电出版社
出版时间:2019-4
格式:epub/mobi/azw3/pdf
页数:168
豆瓣评分: 8.4
书籍简介:
本书是数据结构与算法的入门指南,不局限于某种特定语言,略过复杂的数学公式,用通俗易懂的方式针对编程初学者介绍数据结构与算法的基本概念,培养读者编程逻辑。主要内容包括:为什么要了解数据结构与算法,大O表示法及其代码优化利用,栈、队列等的合理使用,等等。
作者简介:
杰伊•温格罗(Jay Wengrow)
经验丰富的讲师、工程师,一直致力于全民编程教育。编程培训公司Actualize、教育公司Anyone Can Learn To Code的创始人和CEO。
书友短评:
@ 积莫凛 讲得很简单,简单到哭泣(灬ꈍ ꈍ灬)看别的书或课太难了就从这里找到信心 @ iphyer 基础书 @ 静观然 很好懂 @ 夜行山人 和《算法图解》有很多重合,排序算法细化了。 @ 匠与高千 过于简洁,主要是介绍了一些基础的数据结构和复杂度计算。温故而知新吧,至少第一次见Ruby的代码,还是有点收获的 @ momo 我是菜鸟,但是这本书不嫌弃我。个人认为比«算法图解»要好,更适合入门,而且读书的感觉也更好。但是,在二叉树那个地方,后续结点,你要不要看看你在说什么 @ Wiki 还行,查漏补缺,入门读物肯定不能只靠一本。插入排序的讲法有点神奇( @ Saunak 使用的语言还是python2和ruby,已经脱离时代了。而且讲的很啰嗦,没太多看的必要 @ 小与强的邂逅 简单易懂,回顾了大学的数据结构那门课 @ 灰太狼 通俗易懂,入门必读。
第1章 数据结构为何重要 1
1.1 基础数据结构:数组 1
1.1.1 读取 3
1.1.2 查找 5
1.1.3 插入 7
1.1.4 删除 8
1.2 集合:一条规则决定性能 10
1.3 总结 12
第2章 算法为何重要 13
2.1 有序数组 13
2.2 查找有序数组 15
2.3 二分查找 16
2.4 二分查找与线性查找 19
2.5 总结 20
第3章 大O记法 21
3.1 大O:数步数 21
3.2 常数时间与线性时间 22
3.3 同一算法,不同场景 24
3.4 第三种算法 24
3.5 对数 25
3.6 解释O(log N) 26
3.7 实例 27
3.8 总结 28
第4章 运用大O来给代码提速 29
4.1 冒泡排序 29
4.2 冒泡排序实战 30
4.3 冒泡排序的实现 33
4.4 冒泡排序的效率 35
4.5 二次问题 36
4.6 线性解决 38
4.7 总结 39
第5章 用或不用大O来优化代码 40
5.1 选择排序 40
5.2 选择排序实战 41
5.3 选择排序的实现 45
5.4 选择排序的效率 46
5.5 忽略常数 47
5.6 大O的作用 47
5.7 一个实例 48
5.8 总结 49
第6章 乐观地调优 50
6.1 插入排序 50
6.2 插入排序实战 51
6.3 插入排序的实现 55
6.4 插入排序的效率 56
6.5 平均情况 58
6.6 一个实例 60
6.7 总结 61
第7章 查找迅速的散列表 62
7.1 探索散列表 62
7.2 用散列函数来做散列 63
7.3 一个好玩又赚钱的同义词典 64
7.4 处理冲突 65
7.5 找到平衡 68
7.6 一个实例 69
7.7 总结 72
第8章 用栈和队列来构造灵巧的代码 73
8.1 栈 73
8.2 栈实战 75
8.3 队列 79
8.4 队列实战 80
8.5 总结 81
第9章 递归 82
9.1 用递归代替循环 82
9.2 基准情形 83
9.3 阅读递归代码 84
9.4 计算机眼中的递归 86
9.5 递归实战 87
9.6 总结 89
第10章 飞快的递归算法 90
10.1 分区 90
10.2 快速排序 94
10.3 快速排序的效率 98
10.4 最坏情况 101
10.5 快速选择 103
10.6 总结 105
第11章 基于结点的数据结构 106
11.1 链表 106
11.2 实现一个链表 107
11.3 读取 108
11.4 查找 109
11.5 插入 110
11.6 删除 112
11.7 链表实战 114
11.8 双向链表 115
11.9 总结 118
第12章 让一切操作都更快的二叉树 119
12.1 二叉树 119
12.2 查找 121
12.3 插入 124
12.4 删除 126
12.5 二叉树实战 132
12.6 总结 133
第13章 连接万物的图 134
13.1 图 134
13.2 广度优先搜索 136
13.3 图数据库 144
13.4 加权图 146
13.5 Dijkstra算法 148
13.6 总结 154
第14章 对付空间限制 155
14.1 描述空间复杂度的大O记法 155
14.2 时间和空间之间的权衡 157
14.3 写在最后的话 158
· · · · · ·
图灵程序设计丛书(共104册),这套丛书还有《正则表达式必知必会》《24小时365天不间断服务》《Spark快速大数据分析(第2版)》《Python自然语言处理实战》《Rust程序设计》等。
添加微信公众号:好书天下获取
评论前必须登录!
注册