Untitled

 avatar
unknown
c_cpp
25 days ago
590 B
3
Indexable
void dfs(vector<vector<int>> &adj, int source, vector<bool> &visited, vector<int> &ans){
    ans.push_back(source);
    visited[source] = true;
    for(auto i: adj[source]){
        if(!visited[i]){
            dfs(adj, i, visited, ans);
        }
    }
    return;
}

vector<int> sol(vector<vector<int>> &symbolPair){
    int n = symbolPair.size()+1;
    vector<vector<int>> adj(n);

    for(auto i: symbolPair){
        adj[i[0]].push_back(i[1]);
        adj[i[1]].push_back(i[0]);
    }

    vector<bool> visited(n);
    vector<int> ans;

    dfs(adj, 1, visited, ans);
    return ans;
}
Editor is loading...
Leave a Comment