Question 1. Implement a computer program in C to compute the shortest path between two nominated vertices on the graph, G, using Dijkstra’s algorithm. Instructions Given a picture of an arbitrary undirected, simple, weighted graph, G, with a maximum of 10 vertices: a. Capture the graph, G=(V, E), into your program; b. Nominate an initial vertex and a goal vertex; c. Calculate the shortest path between those two vertices; d. Display the shortest route between the two vertices; e. Display the distance or cost of the route. The following discussion points should be included: Description of graph capture method Implementation choices Screenshot of program output Relevant example or use in practice Reflection Hints Make use of the graph test case provided to verify that your implementation is operating correctly See the extra FAQ document for additional clarification on common questions See section 6.3.1 Skiena 2nd edition and section 8.31 Skiena 3rd edition There are numerous ways to solve the different parts of the problem, but in principle, the following functions are required: o Define a struct to house the graph information o Input vertices (V) and edges (E) of graph G into the program o Input initial- and goal- node/vertex o Logic to visit each node and keep track of which nodes were already visited o Logic to perform Dijkstra at each visited node o Output route and cost
Question 1.
Implement a computer
G, using Dijkstra’s algorithm.
Instructions
Given a picture of an arbitrary undirected, simple, weighted graph, G, with a maximum of 10 vertices:
a. Capture the graph, G=(V, E), into your program;
b. Nominate an initial vertex and a goal vertex;
c. Calculate the shortest path between those two vertices;
d. Display the shortest route between the two vertices;
e. Display the distance or cost of the route.
The following discussion points should be included:
Description of graph capture method
Implementation choices
Screenshot of program output
Relevant example or use in practice
Reflection
Hints
Make use of the graph test case provided to verify that your implementation is operating correctly
See the extra FAQ document for additional clarification on common questions
See section 6.3.1 Skiena 2nd edition and section 8.31 Skiena 3rd edition
There are numerous ways to solve the different parts of the problem, but in principle, the following
functions are required:
o Define a struct to house the graph information
o Input vertices (V) and edges (E) of graph G into the program
o Input initial- and goal- node/vertex
o Logic to visit each node and keep track of which nodes were already visited
o Logic to perform Dijkstra at each visited node
o Output route and cost
Trending now
This is a popular solution!
Step by step
Solved in 4 steps with 4 images