admin管理员组文章数量:1037775
【数据结构与算法】最小生成树算法实现:Prim && Kruskal
Ⅰ. 最小生成树
连通图中的每一棵生成树,都是原图的一个极大无环子图,即:从其中删去任何一条边,生成树就不再连通;反之,在其中引入任何一条新边,都会形成一条回路。
若连通图由 n
个顶点组成,则其生成树必含 n
个顶点和 n-1
条边。因此构造最小生成树的准则有三条:
- 只能使用图中的边来构造最小生成树
- 只能使用恰好
n-1
条边来连接图中的n
个顶点 - 选用的
n-1
条边不能构成回路
构造最小生成树的方法:Kruskal
算法和 Prim
算法。这两个算法都采用了逐步求解的贪心策略。
贪心算法:是指在问题求解时,总是做出当前看起来最好的选择。也就是说贪心算法做出的不是整体最优的的选择,而是某种意义上的局部最优解。贪心算法不是对所有的问题都能得到整体最优解(也就是说这两种算法并不是万能的)。
【数据结构与算法】最小生成树算法实现:Prim && Kruskal
Ⅰ. 最小生成树
连通图中的每一棵生成树,都是原图的一个极大无环子图,即:从其中删去任何一条边,生成树就不再连通;反之,在其中引入任何一条新边,都会形成一条回路。
若连通图由 n
个顶点组成,则其生成树必含 n
个顶点和 n-1
条边。因此构造最小生成树的准则有三条:
- 只能使用图中的边来构造最小生成树
- 只能使用恰好
n-1
条边来连接图中的n
个顶点 - 选用的
n-1
条边不能构成回路
构造最小生成树的方法:Kruskal
算法和 Prim
算法。这两个算法都采用了逐步求解的贪心策略。
贪心算法:是指在问题求解时,总是做出当前看起来最好的选择。也就是说贪心算法做出的不是整体最优的的选择,而是某种意义上的局部最优解。贪心算法不是对所有的问题都能得到整体最优解(也就是说这两种算法并不是万能的)。
本文标签: 数据结构与算法最小生成树算法实现Prim ampamp Kruskal
版权声明:本文标题:【数据结构与算法】最小生成树算法实现:Prim && Kruskal 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://it.en369.cn/jiaocheng/1748265709a2277337.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论