
C++,
void traverseWithDijkstra(string start);
➔Use Dijkstra's
➔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<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;
};

Trending nowThis is a popular solution!
Step by stepSolved in 4 steps with 3 images

- for c++ please thank you please type the code so i can copy and paste easily thanks. 4, List search Modify the linked listv class you created in the previous programming challange to include a member function named search that returns the position of a specific value, x, in the lined list. the first node in the list is at position 0, the second node is at position 1, and so on. if x is not found on the list, the search should return -1 test the new member function using an approprate driver program. here is my previous programming challange. #include <iostream> using namespace std; struct node { int data; node *next; }; class list { private: node *head,*tail; public: list() { head = NULL; tail = NULL; } ~list() { } void append() { int value; cout<<"Enter the value to append: "; cin>>value; node *temp=new node; node *s; temp->data = value; temp->next = NULL; s = head; if(head==NULL) head=temp; else { while (s->next != NULL) s = s->next; s->next =…arrow_forwardpiechart1<-function(){#open function #Function to graph a pie chart #assign values to un.teenager vector un.teenager<-c("20-29","30-39","40-49","50-59","60-69","70-79") #draw a pie chart of data pie(un.teenager) }close function trying to make a pie chart in Rarrow_forwardC++arrow_forward
- C++ Program #include <iostream>#include <cstdlib>#include <ctime>using namespace std; int getData() { return (rand() % 100);} class Node {public: int data; Node* next;}; class LinkedList{public: LinkedList() { // constructor head = NULL; } ~LinkedList() {}; // destructor void addNode(int val); void addNodeSorted(int val); void displayWithCount(); int size(); void deleteAllNodes(); bool exists(int val);private: Node* head;}; // function to check data exist in a listbool LinkedList::exists(int val){ if (head == NULL) { return false; } else { Node* temp = head; while (temp != NULL) { if(temp->data == val){ return true; } temp = temp->next; } } return false;} // function to delete all data in a listvoid LinkedList::deleteAllNodes(){ if (head == NULL) { cout << "List is empty, No need to delete…arrow_forwardCreate three interfaces for the following using java language One method that accepts the number and return if its positive or negative, its square and its cube. Two methods that accepts 2 parameters and return their difference, product and quotient, the largest and smallest. Three methods that accepts 2 to 4 parameters and return their sum. (Use overloaded)arrow_forwardC++ Consider the following function as a property of a LinkedBag that contains a Doubly Linked List. Assume a Node has pointers prev and next, which can be read and changed with the standard get and set methods. Assume that the doubly linked list is: 1 <--> 2 <--> 3 <--> 4 <--> 5 <-->6 If you are uncertain what the above diagram depicts, it is a doubly linked list such that: The head of this doubly linked list is the node that contains the value 1. The tail of this doubly linked list is the node that contains the value 6. The 3rd node in this list contains the value 3. The contents of this list are the values 1 through 6 in sequential order. The following questions are regarding the linked list after after the test_function is run. A. The head of the list after the test_function is run contains the value: B. The tail of the list after the test_function is run contains the value: C. The 3rd node in the list after the test_function is run…arrow_forward
- a) Write a program that asks user to enter number of vertices in a directed graph and thenthe adjacency matrix representing the directed graph. The program, then, must display thenode with the highest outdegree. Assume that nodes are named as 0, 1, 2 and so on.arrow_forwardc++arrow_forwarde) The power to a motor in a group conveyor system is controlled by the state of Four Sensor Switches A,B,C and D. The motor is to be switched on when:- All sensor switches are OPEN- Any one switch is CLOSED and the remaining three OPEN- B and C CLOSED, A and D OPEN- A and D CLOSED, B and C OPEN Assuming Switch closed = logic 1 and Switch open =0 Design the logic circuit to control the motor using NOR gates only [5 marks]arrow_forward
- #include <iostream> using namespace std; #define SIZE 5 //creating the queue using array int A[SIZE]; int front = -1; int rear = -1; //function to check if the queue is empty bool isempty() { if(front == -1 && rear == -1) return true; else return false; } //function to enter elements in queue void enqueue ( int value ) { //if queue is full if ((rear + 1)%SIZE == front) cout<<"Queue is full \n"; else { //now the first element is inserted if( front == -1) front = 0; //inserting element at rear end rear = (rear+1)%SIZE; A[rear] = value; } } //function to remove elements from queue void dequeue ( ) { if( isempty() ) cout<<"Queue is empty\n"; else //only one element if( front == rear ) front = rear = -1; else front = ( front + 1)%SIZE; } //function to show the element at front void showfront() { if( isempty()) cout<<"Queue is empty\n"; else cout<<"element at front is:"<<A[front]; } //function to display the queue void…arrow_forwardC++ Given code #include <iostream>using namespace std; class Node {public:int data;Node *pNext;}; void displayNumberValues( Node *pHead){while( pHead != NULL) {cout << pHead->data << " ";pHead = pHead->pNext;}cout << endl;} //Option 1: Search the list// TODO: complete the function below to search for a given value in linked lsit// return true if value exists in the list, return false otherwise. ?? linkedlistSearch( ???){ } //Option 2: get sum of all values// TODO: complete the function below to return the sum of all elements in the linked list. ??? getSumOfAllNumbers( ???){ } int main(){int userInput;Node *pHead = NULL;Node *pTemp;cout<<"Enter list numbers separated by space, followed by -1: "; cin >> userInput;// Keep looping until end of input flag of -1 is givenwhile( userInput != -1) {// Store this number on the listpTemp = new Node;pTemp->data = userInput;pTemp->pNext = pHead;pHead = pTemp;cin >> userInput;}cout <<"…arrow_forwarddef dotProduct(Vs): V1 #get first vector from Vs ......... V2 #get second vector from Vs #check if they are in the same length ......... if ......... ...... ... #complete as needed ......... for in ...... ... ......... . dp #dp: dot-product ......... #complete as needed #u = (-2 4 -2) and v = (-3 6 3) u = . .; #setup u an v as a numpy array V Vc = [. ., #test the function using u and v print (.) #print "Dot-product of vectors isarrow_forward
- Database System ConceptsComputer ScienceISBN:9780078022159Author:Abraham Silberschatz Professor, Henry F. Korth, S. SudarshanPublisher:McGraw-Hill EducationStarting Out with Python (4th Edition)Computer ScienceISBN:9780134444321Author:Tony GaddisPublisher:PEARSONDigital Fundamentals (11th Edition)Computer ScienceISBN:9780132737968Author:Thomas L. FloydPublisher:PEARSON
- C How to Program (8th Edition)Computer ScienceISBN:9780133976892Author:Paul J. Deitel, Harvey DeitelPublisher:PEARSONDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781337627900Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningProgrammable Logic ControllersComputer ScienceISBN:9780073373843Author:Frank D. PetruzellaPublisher:McGraw-Hill Education





