数据结构课程:小生成树概念与贪心算法.pptxVIP

  • 0
  • 0
  • 约4.43千字
  • 约 10页
  • 2026-02-13 发布于北京
  • 举报

数据结构课程:小生成树概念与贪心算法.pptx

§5MinimumSpanningTree【Definition】AspanningtreeofagraphGisatreewhichconsistsofV(G)andasubsetofE(G)〖Example〗AcompletegraphandthreeofitsspanningtreesNote:Theminimumspanningtreeisatreesinceitisacyclic--thenumberofedgesis|V|–1.Itisminimumforthetotalcostofedgesisminimized.Itisspanningbecauseitcoverseveryvertex.AminimumspanningtreeexistsiffGisconnected.Addinganon-treeedgetoaspanningtree,weobtainacycle.1/9

§5MinimumSpanningTreeGreedyMethodMakethebestdecisionforeachstage,underthefollowingconstrains:(1)wemustuseonlyedgeswithinthegraph;(2)wemustuseexactly|V|?1edges;(3)wemaynotuseedgesthatwouldproduceacycle.1.Prim’sAlgorithm–growatree/*verysimilartoDijkstra’salgorithm*/v1v2v6v7v3v4v524213107584612/9

§5MinimumSpanningTree2.Kruskal’sAlgorithm–maintainaforestvoidKruskal(GraphG){T={};while(Tcontainslessthan|V|?1edgesEisnotempty){choosealeastcostedge(v,w)fromE;delete(v,w)fromE;if((v,w)doesnotcreateacycleinT) add(v,w)toT;else discard(v,w);}if(Tcontainsfewerthan|V|?1edges)Error(“Nospanningtree”);}/*DeleteMin*//*Union/Find*/AmoredetailedpseudocodeisgivenbyFigure9.58onp.321T=O(|E|log|E|)3/9

§6ApplicationsofDepth-FirstSearch/*ageneralizationofpreordertraversal*/voidDFS(VertexV)/*thisisonlyatemplate*/{visited[V]=true;/*markthisvertextoavoidcycles*/for(eachWadjacenttoV)if(!visited[W]) DFS(W);}/*T=O(|E|+|V|)aslongasadjacencylistsareused*/0123456DFS(0)1.UndirectedGraphsvoidListComponents(GraphG){for(eachVinG)if(!visited[V]){ DFS(V);printf(“\n“);}}780146523784/9

§6ApplicationsofDepth-FirstSearch2.Biconne

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档