这篇博客旨在为我之前写的几篇博文和以后会写的博文提供一个索引。这些博文会用C++语言改写Robert Sedgewick 与 Kevin Wayne 的著作Algorithm(4th)的部分算法。所以这些文章都不会对算法做出很详细的解释。如果有需要还请查找相关算法更详细的内容。该博文对书本起辅助作用。 (这本书写的还算不错,不确定买哪本算法书的可以考虑下)
章节 | 算法(点击超链接可跳转) | 描述 |
---|
基础 | union-find算法 | 求连通分支数 | 排序 | 基础排序算法 | 选择排序插入排序希尔排序 | 排序 | 归并排序 | 基于归并法的排序 | 排序 | 快速排序 | 最常用的排序方式之一 | 排序 | 堆排序 | 基于二叉堆的排序 | 排序 | 优先队列 | 元素具有优先级的队列 | 选择 | 二分查找 | 基于二分法的查找 | 选择 | 二叉查找树 | 构造二叉树用于查找 | 选择 | 红黑树 | 构造平衡的二叉树 | 选择 | 基于拉链法的哈希表 | 使用二维数组处理碰撞 | 选择 | 基于线性探测法的哈希表 | 调成储存位置处理碰撞 | 图 | 无向图 | 使用邻接矩阵构造无向图 | 图 | DFS | 优先搜索子节点的图搜索 | 图 | BFS | 优先搜索兄弟节点的图搜索 | 图 | 有向图 | 使用邻接矩阵构造有向图及其API | 图 | 拓扑排序 | 施工中…… | 图 | kosaraju算法 | 施工中…… | 图 | 带权无向图及kruskal算法 | 施工中…… | 图 | prim算法 | 施工中…… | 图 | dijkstra算法 | 施工中…… | 图 | Bellman-Fond算法 | 施工中…… | 字符串 | 低位优先的字符串排序 | 施工中…… | 字符串 | 高位优先的字符串排序 | 施工中…… | 字符串 | 三向快速字符串排序 | 施工中…… | 字符串 | 单词查找树 | 施工中…… | 字符串 | KMP算法 | 施工中…… | 字符串 | Boyer-Moore算法 | 施工中…… | 字符串 | Rabin-karp算法 | 施工中…… | 字符串 | 正则表达式 | 施工中…… | 字符串 | 游程编码 | 施工中…… | 字符串 | 霍夫曼压缩 | 施工中…… | 字符串 | LZW压缩 | 施工中…… | 背景 | B-树 | 施工中…… | 背景 | 后缀数组 | 施工中…… | 背景 | 网络流算法 | 施工中…… |
关于我一直使用STL这件事,我用C++ STL是基于以下几点考虑:
- STL更加的安全,不容易发生内存泄漏等问题
- STL与java的语法更加相像,所以更方便执行书中的操作,也更方便理解
- STL有很多现成的方法,方便我们进行调用而不必过多的重新构造相应方法
|