My issue
code please
My code
# cook your dish here
#include <iostream>
#include <vector>
#include <stack>
using namespace std;
void topologicalSortUtil(int v, vector<bool> &visited, stack<int> &Stack, vector<vector<int>> &adj) {
visited[v] = true;
for (int i : adj[v]) {
if (!visited[i])
topologicalSortUtil(i, visited, Stack, adj);
}
Stack.push(v);
}
void topologicalSort(int V, vector<vector<int>> &adj) {
stack<int> Stack;
vector<bool> visited(V, false);
for (int i = 0; i < V; i++) {
if (!visited[i])
topologicalSortUtil(i, visited, Stack, adj);
}
while (!Stack.empty()) {
cout << Stack.top() << " ";
Stack.pop();
}
cout << endl;
}
int main() {
int T;
cin >> T;
while (T--) {
int V, E;
cin >> V >> E;
vector<vector<int>> adj(V);
for (int i = 0; i < E; i++) {
int u, v;
cin >> u >> v;
adj[u].push_back(v);
}
topologicalSort(V, adj);
}
return 0;
}
Learning course: Analysis and Design of Algorithms
Problem Link: Topological sort in Analysis and Design of Algorithms