kruskal算法是什么

 时间:2024-10-13 07:25:20

kruskal算法是求加权连通图的最小生成树的算法。

kruskal算法总共选择n- 1条边,(共n个点)所使用的贪心准则是:从剩下的边中选择一条不会产生环路的具有最小耗费的边加入已选择的边的集合中。注意到所选取的边若产生环路则不可能形成一棵生成树。

kruskal算法分e步,其中e是网络中边的数目。按耗费递增的顺序来考虑这e 条边,每次考虑一条边。当考虑某条边时,若将其加入到已选边的集合中会出现环路,则将其抛弃,否则,将它选入。

kruskal算法是什么

Kruskal算法基本思想:

每次选不属于同一连通分量(保证不生成圈)且边权值最小的顶点,将边加入MST,并将所在的2个连通分量合并,直到只剩一个连通分量。

排序使用Quicksort(O(eloge))。

检查是否在同一连通分量用Union-Find,每次Find和union运算近似常数。

Union-Find使用rank启发式合并和路径压缩。

总复杂度O(eloge)=O(elogv) (因为e<n(n-1)/2)。

  • onchange()事件不触发 不起作用
  • 新型冠状病毒疫情相关的各类别搜索关键词排行榜
  • 如何使用CSS3中的flex属性控制元素分块显示
  • 如何使用python语言中的array进行访问数组
  • 如何利用SQL Server2012创建数据库表唯一索引
  • 热门搜索
    国庆节手抄报简单易画 保护大自然的手抄报 预防结核病手抄报内容 卫生小常识手抄报 关于诗的手抄报 好书伴我成长手抄报 母亲手抄报大全 欢庆六一手抄报资料 小学生重阳节手抄报 科技手抄报图片