// Copyright 2003, Trustees of Indiana University // Please see the license in the file ../LICENSE // prim_minimum_spanning_tree algorithm from BFS using GCollections; public class project2nd: BinaryFunction { public T op(T a, T b) { return b; } } public class prim_minimum_spanning_tree { public static void go< GraphT, Vertex, Edge, VertexIterator, OutEdgeIterator, WeightMap, DistanceMap, Distance, DistanceCompare, PredecessorMap> (GraphT g, Vertex s, PredecessorMap predecessor, DistanceMap distance, WeightMap weight, DistanceCompare compare, Distance inf, Distance zero) where GraphT: VertexListAndIncidenceGraph, Edge: GraphEdge, VertexIterator: IEnumerable, OutEdgeIterator: IEnumerable, WeightMap: ReadablePropertyMap, DistanceMap: ReadWritePropertyMap, DistanceCompare: StrictWeakOrdering, PredecessorMap: ReadWritePropertyMap { project2nd combine = new project2nd(); dijkstra_shortest_paths.go< GraphT, Vertex, Edge, VertexIterator, OutEdgeIterator, WeightMap, DistanceMap, Distance, PredecessorMap, project2nd, DistanceCompare >(g,s,predecessor,distance,weight,compare,combine,inf,zero); } }