481张步骤图详解26个算法和7个数据结构的基本原理 2.没有枯燥的理论和复杂的代码,易于理解 3.采用大量彩色图片,清晰直观,便于记忆 4.零基础也能轻松掌握,自学算法的好搭档。
《我的第一本算法书》一书采用大量图片,通过详细的分步讲解,以直观、易懂的方式展现了7个数据结构和26个基础算法的基本原理。第1章介绍了链表、数组、栈等7个数据结构;从第2章到第7章,分别介绍了和排序、查找、图论、安全、聚类等相关的26个基础算法,内容涉及冒泡排序、二分查找、广度优先搜索、哈希函数、迪菲-赫尔曼密钥交换、k-means算法等。
本书没有枯燥的理论和复杂的公式,而是通过大量的步骤图帮助读者加深对数据结构原理和算法执行过程的理解,便于学习和记忆。将本书作为算法入门的第一步,是非常不错的选择。
目录
序章算法的基本知识001
0-1什么是算法002
0-2运行时间的计算方法007
第1章数据结构009
1-1什么是数据结构010
1-2链表013
1-3数组016
1-4栈020
1-5队列022
1-6哈希表024
1-7堆032
1-8二叉查找树036
第2章排序043
2-1什么是排序044
2-2冒泡排序046
2-3选择排序050
2-4插入排序052
2-5堆排序056
2-6归并排序060
2-7快速排序064
第3章数组的查找071
3-1线性查找072
3-2二分查找074
第4章图的搜索077
4-1什么是图078
4-2广度优先搜索082
4-3深度优先搜索086
4-4贝尔曼-福特算法090
4-5狄克斯特拉算法096
4-6A算法103
第5章安全算法107
5-1安全和算法108
5-2加密的基础知识112
5-3哈希函数116
5-4共享密钥加密120
5-5公开密钥加密124
5-6混合加密132
5-7迪菲-赫尔曼密钥交换136
5-8消息认证码144
5-9数字签名152
5-10数字证书158
第6章聚类165
6-1什么是聚类166
6-2k-means算法168
第7章其他算法173
7-1欧几里得算法174
7-2素性测试178
7-3网页排名182
7-4汉诺塔190