Algorithm 访问某些顶点时在加权图中寻找最短路径
我试图在无向加权图中找到从A到Z的最短路径。但是,生成的路径也应该经过一组无序的顶点(比如B、C和D)。Algorithm 访问某些顶点时在加权图中寻找最短路径,algorithm,graph,path-finding,Algorithm,Graph,Path Finding,我试图在无向加权图中找到从A到Z的最短路径。但是,生成的路径也应该经过一组无序的顶点(比如B、C和D)。 我还没有找到这个确切问题的任何答案,但我遇到过类似的问题,这些问题将这个问题定义为NP难问题(因此就我所知,并不是每个图都能解) 那么,是否还有一种算法,它至少会尝试找到一条路径,该路径访问所有这些顶点和断点,以防在用尽合理数量的选项后无法找到路径 如果没有,在我的例子中,另一种方法是对这些必须访问的顶点进行排序。有没有更好的方法来找到路径,而不仅仅是将路径拆分并计算每个段(a->B、B->
我还没有找到这个确切问题的任何答案,但我遇到过类似的问题,这些问题将这个问题定义为NP难问题(因此就我所知,并不是每个图都能解) 那么,是否还有一种算法,它至少会尝试找到一条路径,该路径访问所有这些顶点和断点,以防在用尽合理数量的选项后无法找到路径 如果没有,在我的例子中,另一种方法是对这些必须访问的顶点进行排序。有没有更好的方法来找到路径,而不仅仅是将路径拆分并计算每个段(a->B、B->C等)的最佳路径?给定一组顶点S和原点垂直v,您可以使用深度优先搜索从距离v最近到最远的顺序来排序S中的顶点,即制作一个距离表 创建该表实际上会生成一个新的图,该图仅由O(nm)中的顶点S组成,其中n是图的大小,m是集S的大小 现在,您正在寻找通过此新图的所有顶点的最短路径。因此,您的问题相当于较小图上的旅行商问题 请注意,通过以下方式强制执行旅行商算法的结束点是相当简单的
现在由您选择一个应用于较小图形的选项。应该可以。谢谢