C++, void traverseWithDijkstra(string start); ➔Use Dijkstra's algorithm to compute the single source shortest path in the graph from the start city to all other nodes in its component. ➔You don’t print anything in this function. Storing the ​distance ​associated with every node relative to the ​start ​node is enough.   .hpp #ifndef GRAPH_H #define GRAPH_H #include #include   using namespace std;   struct vertex; struct adjVertex{ vertex *v; int weight; };   struct vertex{ vertex() { this->visited = false; this->distance = 0; this->pred = NULL; } string name; bool visited; int distance; vertex *pred; vector adj; };   class Graph { public: void createEdge(string v1, string v2, int num); void insertVertex(string name); void displayEdges();   void depthFirstTraversal(string sourceVertex); void traverseWithDijkstra(string sourceVertex); void minDistPath(string start, string end); private: vector vertices; };

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question

C++,

void traverseWithDijkstra(string start);

➔Use Dijkstra's algorithm to compute the single source shortest path in the graph from the start city to all other nodes in its component.

➔You don’t print anything in this function. Storing the ​distance ​associated with every node relative to the ​start ​node is enough.

 

.hpp

#ifndef GRAPH_H

#define GRAPH_H

#include<vector>

#include<iostream>

 

using namespace std;

 

struct vertex;

struct adjVertex{

vertex *v;

int weight;

};

 

struct vertex{

vertex() {

this->visited = false;

this->distance = 0;

this->pred = NULL;

}

string name;

bool visited;

int distance;

vertex *pred;

vector<adjVertex> adj;

};

 

class Graph

{

public:

void createEdge(string v1, string v2, int num);

void insertVertex(string name);

void displayEdges();

 

void depthFirstTraversal(string sourceVertex);

void traverseWithDijkstra(string sourceVertex);

void minDistPath(string start, string end);

private:

vector<vertex*> vertices;

};

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 4 steps with 3 images

Blurred answer
Knowledge Booster
Binary Tree
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education