我想通过使用Prim算法的输出来找到图形边缘的权重。
注意:在图表中有n条边,每条边都不同,介于1-n之间。
例如:
Vertices = {A, B, C, D, E}
Edges = {B-D, D-E, E-A, C-B, A-D, D-C, A-C}
Extract_Min() Order = B D C A E
通过使用上述信息,我想找到每条边的重量。你有什么想法吗?
提前致谢。
编辑:解决方案不必是唯一的。
答案 0 :(得分:1)
以你的例子:
Vertices = {A, B, C, D, E}
Edges = {B-D, D-E, E-A, C-B, A-D, D-C, A-C}
Extract_Min() Order = B D C A E
查看Extract_Min()
给出的顺序
重量为1的边缘肯定是B-D
将权重2分配给集合{B,D}
到C
的某个单边
将权重3分配给集合{B,D,C}
到A
的某个单边
将权重4分配给集合{B,D,C,A}
到E
的某个单边
按任意顺序将剩余的权重分配给剩余的边。