private IGraph BuildGraph_FromExercise()
        {
            Graph graph = new Graph();

            graph.AddVertex("A", "Q");
            graph.AddVertex("B", "R");
            graph.AddVertex("C", "R");
            graph.AddVertex("D", "R");
            graph.AddVertex("E", "R");
            graph.AddVertex("F", "S");
            graph.AddVertex("G", "R");

            graph.AddUndirectedEdge("A", "B", 2);
            graph.AddUndirectedEdge("A", "C", 3);
            graph.AddUndirectedEdge("A", "G", 4);

            graph.AddUndirectedEdge("B", "C", 8);
            graph.AddUndirectedEdge("B", "D", 10);
            graph.AddUndirectedEdge("B", "F", 3);

            graph.AddUndirectedEdge("C", "E", 5);

            graph.AddUndirectedEdge("D", "E", 2);
            graph.AddUndirectedEdge("D", "F", 4);
            return(graph);
        }
        private IGraph BuildGraphOther()
        {
            Graph graph = new Graph();

            graph.AddVertex("A", "P");
            graph.AddVertex("B", "Q");
            graph.AddVertex("C", "Q");
            graph.AddVertex("D", "Q");
            graph.AddVertex("E", "R");
            graph.AddVertex("F", "R");

            graph.AddUndirectedEdge("A", "B", 1);
            graph.AddUndirectedEdge("A", "C", 5);

            graph.AddUndirectedEdge("B", "C", 2);
            graph.AddUndirectedEdge("B", "E", 4);

            graph.AddUndirectedEdge("C", "D", 6);
            graph.AddUndirectedEdge("C", "E", 1);

            graph.AddUndirectedEdge("D", "F", 2);

            graph.AddUndirectedEdge("E", "F", 2);
            return(graph);
        }