【发布时间】:2016-05-03 21:54:41
【问题描述】:
假设 G 是一个有 n 个顶点的无向图,每对顶点之间都有带权边。你能用以下结构构造一棵树吗:
v_1-v_2-v_3-...-v_n 使得树中的每个节点对应于 G 中的一个顶点,并且每个节点除了叶子之外只有一个子节点。树边的总权重也被最小化了。
如果使用类似于 Kruskal 算法的算法:按升序对原始图中所有边的权重进行排序。从权重最小的边开始,如果添加这条边不违反上述树结构,则将这条边添加到最终的树中,否则,继续下一条。
这个算法能给出最小权重的树吗?如果没有,是否有可能找到一种算法来得到这棵树?
【问题讨论】:
-
@mcdowella 是的,我正在尝试使用 A* 算法解决旅行推销员问题,并且正在构建我的启发式函数。似乎我想在这里提出的是问题本身。 :(
标签: algorithm graph tree kruskals-algorithm