类似的问题发布在这里.
我有一个带有Vertex V和Edge 的无向图E.我正在寻找一种算法来识别该图中的所有循环基础.这种图表的一个例子如下所示:

现在,所有顶点坐标都是已知的(与上一个问题不同,与上图中的解释相反),因此可以找到包含整个图的最小周期.
在该图中,可能存在不形成任何循环的边.
这样做的最佳算法是什么?
这是另一个你可以看一看的例子:
假设这e1是首先被拾取的边缘,箭头显示边缘的方向.
我还没有尝试过这个,它相当贪婪,但应该有效:
注释:在 3 处,您当然应该执行与步骤 2 相同的操作,因此采用所有可能的路径。
也许这就是一个开始?正如我所说,我还没有尝试过,所以它还没有优化。
编辑:可以在这里找到该算法的一种实现的未记录且未优化的版本: https: //gist.github.com/750015。但是,它并不能完全解决该问题,因为它只能识别“真实”子集。