how to implement this function using c++ ( void dijkstra
how to implement this function using c++ ( void dijkstra(char startVertex, char* prev, Node distances[] );//find the shortest
path from the start vertex to all other vertices, by filling the prev array and the
distances array ) using those functions from other classes functions
struct Node
{
char label;
int cost;
};
class MinHeap
{
Node* heap; //an array of nodes
int _size; //size of array
public:
Node extractMin(); //returns & removes the node with minimum cost
void buildMinHeap(Node[],int);// allocates array then builds a min-heap from an
array of struct Node with the given size
void minHeapify(int i, int n);//restores the min-heap property for the “heap”
array using the given index and size n
void decreaseKey(char label,int newCost);//decreases the node that has the given
label to newCost
int parent(int i);//returns the index of the parent of i
int getSize();//returns size of the heap
bool inHeap(char);//checks if the node with the given label is in the heap
}
class WeightedGraph
{
int** g;
int nVertices;
public:
int getNVertices();//returns the number of vertices
int getWeight(char,char);//returns weight of the edge connecting the given
vertices
int* returnNeighbors(int v);// returns the indices of the neighbors of the vertex
v as an int array
int numNeighbors(int v);//returns the number of neighbors of the vertex v
void loadGraphFromFile(ifstream&);//allocates the adjacency matrix & initializes
edge weights from the specified file
};

Step by step
Solved in 2 steps









