介绍子字符串匹配算法:从右至左暴力匹配算法,BM
算法。
算法 - 最短路径:有向无环图
发表于
|
分类于
Algorithms
在计算最短路径时,Dijkstra
算法和 Bellman-Ford
算法都可以包含环,但是时间复杂度都较高。而有向无环图中,使用拓扑顺序放松边,能非常高效解决单点路径问题。
算法 - 最短路径树 Bellman-Ford 算法
发表于
|
分类于
Algorithms
Bellman-Ford
贝尔曼-福特算法,是求含负权图的单源最短路径的一种算法。特点:支持有环,负权重,但不能存在负权重环。
算法 - 最短路径树基础以及 Dijkstra 算法
发表于
|
分类于
Algorithms
介绍最短路径基础概念;以及 Dijkstra
算法 - 迪科斯彻算法:解决边权重非负的加权有向图的单点最短路径问题。
算法 - 最小生成树 Kruskal 算法
发表于
|
分类于
Algorithms
Kruskal
算法 - 克鲁斯卡尔算法,是一种用来寻找最小生成树的算法。在剩下的所有未选取的边中,找最小边;如果和已选取的边构成回路,则放弃选取次小边。
算法 - 最小生成树以及 Prim 算法
发表于
|
分类于
Algorithms
Prim
算法 - 普里姆算法,用来计算加权无向图的最小生成树。又被称为 DJP
算法、亚尔尼克算法、普里姆-亚尔尼克算法。
算法 - 强连通分量 Tarjan 算法
发表于
|
分类于
Algorithms
Tarjan
算法是 Robert Tarjan
(罗伯特·塔扬)发明的,只通过一次深度优先搜索就能计算出有向图的强连通分量,而 Kosaraju
算法需要做两次 DFS
加上计算图的反向图。