Pagini recente » Cod sursa (job #1724090) | Cod sursa (job #2191057) | Cod sursa (job #2378071) | Cod sursa (job #1598968) | Cod sursa (job #2272718)
#include <fstream>
#include <vector>
using namespace std;
ifstream fin("dfs.in");
ofstream fout("dfs.out");
const int MAXN = 1024;
vector < int > Lista[MAXN];
bool Viz[MAXN];
int N, M;
void DFS(int);
int main()
{
int Origin;
fin >> N >> M >> Origin;
for(int i = 1; i <= M; ++i)
{
int x, y;
fin >> x >> y;
/// graf neorientat
Lista[x].push_back(y);
Lista[y].push_back(x);
}
DFS(Origin);
return 0;
}
void DFS(int nod)
{
Viz[nod] = true;
fout << nod << ' ';
vector < int > :: iterator it;
for(it = Lista[nod].begin(); it != Lista[nod].end(); it++)
if(!Viz[*it])
DFS(*it);
}