《数据结构与算法图解》是由人民邮电出版社出版的一本关于数据算法方面的书籍,作者是杰伊·温格罗(Jay、Wengrow),主要介绍了关于数据结构、算法、图解方面的知识内容,目前在数据算法类书籍综合评分为:8.7分。
书籍介绍
革除繁杂定义,非计算机专业读者也看得懂的专业书
只需掌握简易加减乘除和数据图表分解掉便可升級关键编译程序专业技能
让自学编程工作人员把握专业技能,编写出灵活性且具扩展性的编码
让计算机专业大学生以更通俗易懂的方法加重了解数据结构和算法
让初中级开发者巩固电子信息科学基本概念,提升编码,提高专业技能
这书是数据结构与算法的新手入门手册,不限于某类特殊言语,忽略繁杂的数学公式,用通俗易懂的方法对于编程初学者详细介绍数据结构与算法的基本概念,塑造读者编译程序逻辑性。主题思想包含:需不需要掌握数据结构与算法,大O表示法以及代码设计运用,栈、序列等的有效应用,这些。
目录
- 第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