Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<bits/stdc++.h>
- using namespace std;
- void addEdge(vector<int> adj[], int u, int v)
- {
- adj[u].push_back(v);
- }
- void dfs(vector<int> adj[], int vertex, vector<int> & vis)
- {
- vis[vertex]=1;
- cout<<vertex<<" ";
- for(int x:adj[vertex])
- {
- if(vis[x]==0)
- dfs(adj,x,vis);
- }
- }
- void printGraph(vector<int> adj[], int V)
- {
- for (int v = 0; v < V; ++v)
- {
- cout << "Adjacency list of vertex "
- << v << "\n";
- for (auto x : adj[v])
- cout << x <<" ";
- cout<<"\n";
- }
- }
- int main()
- {
- int V = 5;
- vector<int> adj[V];
- addEdge(adj,0, 1);
- addEdge(adj,0, 2);
- addEdge(adj,1, 2);
- addEdge(adj,2, 0);
- addEdge(adj,2, 3);
- addEdge(adj,3, 3);
- addEdge(adj,4, 4);
- //printGraph(adj,V);
- vector<int> vis(V,0);
- for(int i=0;i<V;i++)
- {
- if(vis[i]==0)
- dfs(adj,i,vis);
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment