书山有径勤为路>>>>>>>>

<<<<<<<<学海无涯苦作舟!

2011年9月14日

Kruskal算法整理——求最小生成树

摘要: 克鲁斯卡尔算法(Kruskal's algorithm)是两个经典的最小生成树算法的较为简单理解的一个。 这里面充分体现了贪心算法的精髓。 大致的流程可以用一个图来表示。这里的图的选择借用了Wikipedia上的那个。非常清晰且直观。 首先第一步,我们有一张图,有若干点和边 如下图所示: . . . . . . 第一步我们要做的事情就是将所有的边的长度排序,用排序的结果作为我们选择边的依据。 这里再次体现了贪心算法的思想。资源排序,对局部最优的资源进行选择。 排序完成后,我们率先选择了边AD。 这样我们的图就变成了 . . . . . . 第二步,在... 阅读全文

posted @ 2011-09-14 09:32 More study needed. 阅读(383) 评论(0) 推荐(0) 编辑

Prim算法的整理——求最小生成树

摘要: 用Prim算法来求出最小生成树的过程Prim算法的描述:设图G =(V,E),其生成树的顶点集合为U。 ①、把v0放入U。 ②、在所有u∈U,v∈V-U的边(u,v)∈E中找一条最小权值的边,加入生成树。 ③、把②找到的边的v加入U集合。如果U集合已有n个元素,则结束,否则继续执行②。 其算法的时间复杂度为O(|E|*log|V|) 第2条是什么意思呢? 它的意思是从剩下的所有的边中找出最小的边,但是这个边是有要求的,也就是必须是与刚刚加入的顶点相通的权值最小的边。 如果还是不懂的话,就看看上面的图吧! 阅读全文

posted @ 2011-09-14 09:21 More study needed. 阅读(274) 评论(0) 推荐(0) 编辑

导航

书山有径勤为路>>>>>>>>

<<<<<<<<学海无涯苦作舟!