本书以海量图解的形式,详细讲解常用的数据结构与算法,又融入大量的竞赛实例和解题技巧。通过对本书的学习,读者可掌握12种初级数据结构、15种常用STL函数、10种二叉树和图的应用,以及8种搜索技术,并领悟不同的数据结构和算法的精髓,熟练应用各种算法解决实际问题。
本书总计9章。第1章讲解C++语言基础,包括语法、函数、递归和数组;第2章讲解算法入门知识,包括算法复杂度计算、贪心算法、分治算法和STL应用;第3章讲解线性表的应用,包括顺序表、单链表、双向链表、循环链表和静态链表;第4章讲解栈和队列的应用,包括顺序栈、链栈、顺序队列和链队列;第5章讲解树的应用,包括树的存储、二叉树遍历与还原、哈夫曼编码;第6章讲解图论基础,包括图的存储、图的遍历和图的连通性;第7章讲解图的应用,包括最短路径、最小生成树、拓扑排序和关键路径;第8章讲解查找算法,包括哈希表、字符串模式匹配、二叉查找树和平衡二叉树;第9章讲解搜索技术,包括二分搜索、深度优先搜索、广度优先搜索和启发式搜索。
本书面向对算法感兴趣的读者,无论是想扎实内功或参加算法竞赛的学生,还是想进入名企的学生、求职者,抑或是想提升技术的在职人员,都可以参考本书。若读者想学习数据结构与算法方面的进阶知识,则可参考《算法训练营:海量图解+竞赛刷题(进阶篇)》。