摘要:
【1】克鲁斯卡尔算法普里姆算法是以某顶点为起点,逐步找各顶点上最小权值的边来构建最小生成树。克鲁斯卡尔算法是直接以边为目标去构建。因为权值是在边上,直接去找最小权值的边来构建生成树也是很自然的想法,只不过构建时要考虑是否会形成环路而已。此时我们用到了图的存储结构中的边集数组结构。以下是边集数组结构的定义代码:本算法所用同普里姆算法的实例,我们直接创建图的边集数组。并对边的权值从小到大排序后如下图:【2】克鲁斯卡尔算法及详解克鲁斯卡尔算法及其详解:鉴于此算法很简单,当 i=0, i=1, i=2时执行结果可以眼观,不再赘述。直接分析重点:此算法的Find函数由边数e决定,时间复杂度为O(loge 阅读全文
posted @ 2013-12-04 16:38
kaizenly
阅读(17653)
评论(0)
推荐(0)
摘要:
【1】什么是最小生成树?对于连通的带权图(连通网)G,其生成树也是带权的。生成树T各边的权值总和称为该树的权。权最小的生成树称为G的最小生成树(Minimum SpannirngTree)。简记为MST。注意:最小是指权值最小一个连通图的生成树是一个极小的连通子图,它包含全部的顶点,但只有足以构成一棵树的n-1条边。求最小生成树有两种算法:普里姆算法和克鲁斯卡尔算法不好理解?看不懂?能通俗点不?看个实例哈:假设你是电信实施工程师,需要为一个镇的九个村庄架设通信网络做设计。村庄位置大致如下图,之间连线的数字表示村与村间的可通达直线距离。你们领导要求你必须用最小的成本完成这次任务。你说怎么办?好, 阅读全文
posted @ 2013-12-04 11:40
kaizenly
阅读(10684)
评论(0)
推荐(2)

浙公网安备 33010602011771号