我正在实施Kruskal的算法,我想利用线程。但是我不确定我对算法有足够的了解。
我想象的是,我会在最后解决并连接图表的不同部分。谁能指出我正确的方向?感谢。
答案 0 :(得分:4)
研究重点是解决问题 最小生成树问题 高度并行化的方式。有了 它是线性的处理器数量 有可能解决问题 O(logn)时间。 2003年的一篇论文“快速 用于计算的共享内存算法 稀疏的最小生成林 图“由David A. Bader和郭晶 聪显示务实 可以计算MST的算法5 8个处理器的速度比 优化顺序算法。[9] 通常,并行算法是 基于Boruvka的算法-Prim's 特别是Kruskal的算法 不能扩展到额外的 处理器。
因此,您可能会查看该文章中提到的算法,但Kruskal可能无法从多个线程中受益。
答案 1 :(得分:0)
Kruskal的MST算法难以并行化,因为它以严格指定的顺序考虑边缘。您应该查看更容易并行化的Boruvka's算法,因为它可以独立地处理部分MST的每个子树。