static void Main(string[] args) { Console.WriteLine("Welcome to Graphs!"); LinkedListNode <object> v1 = new LinkedListNode <object>("dog"); LinkedListNode <object> v2 = new LinkedListNode <object>("Kite"); Graph g1 = new Graph(6, v1, 5); Console.WriteLine("The size of your graph is: "); Console.WriteLine(g1.Size()); g1.AddEdge(v1, v2, 2); Console.WriteLine("I added a Node!"); Console.WriteLine(); Console.WriteLine("Return all Nodes: "); foreach (var item in g1.GetNodes()) { Console.WriteLine($"{item.Item1.Value}, Weight = {item.Item2}"); } Console.WriteLine(); Console.WriteLine("Get neighbor Nodes: "); foreach (var item in g1.GetNeighbors(v1, 5)) { Console.WriteLine($"{item.Item1.Value}, Weight = {item.Item2}"); } }
/// <summary> /// Create a GetEdge method to check for bridge between vertices and get their weight /// </summary> /// <param name="input"></param> /// <param name="connections"></param> /// <returns></returns> public static Dictionary <bool, int> GetEdge(string[] input, Graph connections) { Dictionary <bool, int> path = new Dictionary <bool, int>(); Vertex current; foreach (var vertex in connections.Vertices) { if (vertex.Value == input[0]) { current = vertex; } } for (int i = 0; i < input.Length; i++) { Dictionary <string, int> Neighbors = connections.GetNeighbors(current); foreach (current.AdjacentVertices in Neighbors.Values) { if (current.AdjacentVertices.Values == input[1]) { path.Add <true, > } } } }