简答题

简述Kruskal算法的作用和具体步骤。

正确答案

K.ruskal算法用于最小生成树问题求解。对于有n个顶点的图G=(V,E),Kruskal算法根据图G中所有n个顶点生成一个包括n棵只有根结点的树Ti(i=0,1,…,n-1)的森林F,并按照以下规则森林F中的树合并,形成最小生成树:
A.从边集合E中选取未被访问过且具有最小权的边,置该边状态为已访问。判断该边的两个顶点是否属于不同的树,若属于不同的树则使用该边将两棵树合并为一棵;若属于同一棵树则不做任何处理。
B.重复上一步骤直至森林F中只剩下一棵树,该树即是图G的最小生成树。若最后森林F中剩下不止一棵树,则说明图G是非连通图或非强连通图,在这种情况下不存在最小生成树。

答案解析

相似试题
  • 简述Prim算法的作用和具体步骤。

    简答题查看答案

  • 简述Floyd算法的作用和具体步骤。

    简答题查看答案

  • 简述Dijkstra算法的作用和具体步骤。

    简答题查看答案

  • 图所示是一个无向带权图,请分别按Prim算法和Kruskal算法求最小生成树。

    简答题查看答案

  • 对下图所示的连通网络G,用克鲁斯卡尔(Kruskal)算法求G的最小生成树T,请写出在算法执行过程中,依次加入T的边集TE中的边。说明该算法的贪心策略和算法的基本思想,并简要分析算法的时间复杂度。

    简答题查看答案

  • 对于含有N个顶点E条边的无向连通图,利用Kruskal算法生成最小代价生成树的时间复杂度为()。

    填空题查看答案

  • 对于含有n个顶点e条边的连通图,利用Prim算法求最小生成树的时间复杂度为(),利用Kruskal算法求最小生成树的时间复杂度为()。

    填空题查看答案

  • 算法与程序不同,算法是解决问题的方法与步骤,程序是算法的一种具体实现。

    判断题查看答案

  • 简述动态规划算法的基本步骤。

    简答题查看答案