摘要:
这节,我们主要讨论,一下克鲁斯卡尔算法实现 最小生成树。克鲁斯卡尔算法的基本思想是:对一个有 n个顶点的无向连通网,将图中的边按权值大小依次选取,若选取的边使生成树不形成回路,则把它加入到树中;若形成回路,则将它舍 弃。如此进行下去,直到树中包含有 n-1条边为止。以下图 (a)为例说明用克鲁斯卡尔算法求无向连通网最小生成树的过程。 第一步:首先比较网中所有边的权值,找到最小的权值的边(D,E),加入到生成树的边集 TE 中,TE={(D,E)}。 第二步:再比较图中除边(D,E)的边的权值,又找到最小权值的边(A,D)并且不会形成回路,加入到生成树的边集 TE 中,TE={(A,D),(.. 阅读全文
posted @ 2012-11-13 20:43
laozhu1124
阅读(2600)
评论(4)
推荐(4)
摘要:
好久, 没写blog了,今天,多写点。 上节说到那里了,是不是说图的遍历,这节,我们来通过图的具体的应用了。 首先,看看最小生成树的应用了。 什么是最小生成树了? 由生成树的定义可知,无向连通图的生成树不是唯一的,对连通图的不同遍历就得到不同的生成树。图 b 所示是图 (a)所示的无向连通图的部分生成树。 所谓最小生成树是如果是一个无向连通网, 那么它的所有生成树中必有一棵边的权值总和最小的生成树,我们称这棵生成树为最小代价生成树(Minimum Cost Spanning Tree).许多应用问题都是一个求无向连通网的最小生成树问题。例如,要在 n个城市之间铺设光缆, 铺设光缆的费用... 阅读全文
posted @ 2012-11-13 16:31
laozhu1124
阅读(3093)
评论(7)
推荐(3)
浙公网安备 33010602011771号