Ejemplo n.º 1
0
        static void TestShortestPath()
        {
            Console.WriteLine();

            UGraphMatrix <string> uGraph = new UGraphMatrix <string>();

            uGraph.AddVertex("A");
            uGraph.AddVertex("B");
            uGraph.AddVertex("C");
            uGraph.AddVertex("D");
            uGraph.AddVertex("E");
            uGraph.AddVertex("F");
            uGraph.AddVertex("G");
            uGraph.AddVertex("H");

            uGraph.AddEdge("A", "F", 10);
            uGraph.AddEdge("A", "B", 28);
            uGraph.AddEdge("B", "H", 13);
            uGraph.AddEdge("F", "E", 25);
            uGraph.AddEdge("B", "G", 14);
            uGraph.AddEdge("B", "C", 16);
            uGraph.AddEdge("E", "G", 24);
            uGraph.AddEdge("E", "D", 22);
            uGraph.AddEdge("G", "D", 18);
            uGraph.AddEdge("D", "C", 12);

            UGraphMatrix <string> shortestPath = (UGraphMatrix <string>)uGraph.ShortestWeightedPath("A", "D");

            Console.WriteLine(shortestPath);
        }
Ejemplo n.º 2
0
        static void TestShortestWeightedPath()
        {
            UGraphMatrix <string> uGraph = new UGraphMatrix <string>();

            uGraph.AddVertex("Prince Albert");
            uGraph.AddVertex("Saskatoon");
            uGraph.AddVertex("Yorkton");
            uGraph.AddVertex("Regina");
            uGraph.AddVertex("Weyburn");
            uGraph.AddEdge("Prince Albert", "Saskatoon", 2);
            uGraph.AddEdge("Saskatoon", "Yorkton", 4);
            uGraph.AddEdge("Saskatoon", "Regina", 1);
            uGraph.AddEdge("Regina", "Yorkton", 3);
            uGraph.AddEdge("Regina", "Weyburn", 5);
            uGraph.AddEdge("Yorkton", "Weyburn", 1);

            Console.WriteLine(uGraph);

            Console.WriteLine(uGraph.ShortestWeightedPath("Weyburn", "Prince Albert"));
        }