// Shortest Path in Unweighted Graph #include using namespace std; #define ll long long const int inf = 1e9 + 7; void add_edge(vector vec[], int u, int v) { vec[u].push_back(v); vec[v].push_back(u); } void find_sd(vector vec[], int v, int source) { vector visited(v, false); vector dist(v, INT_MAX); queue q; q.push(source); dist[source] = 0; visited[source] = true; while (q.empty() == false) { int curr = q.front(); q.pop(); // cout<<"curr: "< adj[v]; // adding edge to graph add_edge(adj, 0, 1); add_edge(adj, 0, 2); add_edge(adj, 0, 3); add_edge(adj, 1, 4); add_edge(adj, 1, 5); add_edge(adj, 2, 5); // finding shortes distance int source = 0; find_sd(adj, v, source); return 0; }