小编son*_*mbo的帖子

找到两个顶点子集之间的miniums距离

给定无向图G =(V,E),V1,V2是V的子集 d(V1,V2)=min d(v1,v2),
所以我需要弄清楚如何找到d(V1,V2) O(|V|+|E|)

如果 在此输入图像描述 然后 d(V1,V2)=0

否则,我从V1中随机选择v1'并运行BFS(V1,v1'),从v1'保存最远的顶点v1''我将对来自V2的一些随机顶点v2'执行相同的操作.return d(V1,V2)= min {d(v1',v2'),d(v1',v2''),d(v1''v2'),d(v1'',v2'')}

那会有用吗?由于BFS的运行时为O(| V | + | E |),因此建议的算法将在O(| V | + | E |)中运行

algorithm graph data-structures

2
推荐指数
1
解决办法
1102
查看次数

标签 统计

algorithm ×1

data-structures ×1

graph ×1