public static AdjacencyListGraph <int> CreateMininumSpanningTreeGraph1() { var vertexKeys = new List <int> { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; var graph = new AdjacencyListGraph <int>(true); var vertexs = graph.CreateVertexs(vertexKeys); var edges = new List <AdjacencyEdge <int> >(); edges.AddRange(graph.CreateNonDirectionEdge(vertexs[0], vertexs[1], 3)); edges.AddRange(graph.CreateNonDirectionEdge(vertexs[1], vertexs[2], 4)); edges.AddRange(graph.CreateNonDirectionEdge(vertexs[2], vertexs[3], 1)); edges.AddRange(graph.CreateNonDirectionEdge(vertexs[3], vertexs[4], 3)); edges.AddRange(graph.CreateNonDirectionEdge(vertexs[2], vertexs[5], 1)); edges.AddRange(graph.CreateNonDirectionEdge(vertexs[5], vertexs[6], 1)); edges.AddRange(graph.CreateNonDirectionEdge(vertexs[6], vertexs[7], 2)); edges.AddRange(graph.CreateNonDirectionEdge(vertexs[8], vertexs[7], 9)); //这时的值就是一个生成树。值是24! edges.AddRange(graph.CreateNonDirectionEdge(vertexs[0], vertexs[4], 1)); edges.AddRange(graph.CreateNonDirectionEdge(vertexs[6], vertexs[8], 8)); //新的应该是 graph.CreatGraph(vertexs, edges); return(graph); }