
Write C++ program to create directedweightedgraph data structure using adjacency list (use linklist). Insert 1000 vertexes, use random function to insert edge direction and weight.
a. CaseA: Sparse graph, insert 200 x 200 weighted edges
b. CaseB: Dense Graph, insert 700 x 700 weighted edges
c. CaseC: Complete graph, insert 1000 x 1000 weighted edges
d. Test each Case A, B, and C by counting the total number of edges, and print the correct total edges from above cases, separately. 
To extend above Task 2, write C++ program (functions) for graph shortest path algorithms. Implement Dijkstra and Bellman–Ford algorithms. Do comparative analysis of both algorithms by using Task 2.
a. For analysis of each Case A, B, and C, you need to compute the total time (seconds) consumed by each algorithm. Use time.h to calculate the time.
b. In each Case A, B, and C, search all possible paths for each vertex to all other vertexes from graph.
c. You should compare both algorithms for each Case A, B, and C, separately.
Thank you!!!