我需要的是一份包含广泛的图遍历算法列表,其中简短说明其目的,作为研究它们的起点。到目前为止,我知道以下算法:
- Dijkstra-单源最短路径
- Kruskal-找到最小生成树
众所周知的是:
网络流
以下是我能想到的几个:
深度优先和广度优先遍历,实际上是两种不同的触及所有节点的方法。
Floyd-Warshall算法在(大O)(v^3)时间内查找任意一对点之间的最短路径。
Prim算法是MST的另一种选择,与Kruskal算法类似。
还有寻找完全连接组件的算法,这些组件是节点的分组,其中您可以从组件中的任何成员到达任何其他成员。 这仅适用于“有向图”,其中您只能沿着一条方向遍历边缘。
就我个人而言,我认为图论的最酷的扩展(与您的问题不完全相关,但如果您有兴趣学习有关图形的更多信息,则肯定值得)是“流网络”的概念:http://en.wikipedia.org/wiki/Flow_network。 它是一种计算方式,例如,可以在配有各种功率需求和要求以及各种发电站的房屋之间分配多少电力。
图算法
所有算法汇总
算法和数据结构词典: