Итак, это алгоритм им помощи, я хочу знать, на каком уровне глубины я использую BFSкак я знаю, на каком уровне поиска я использую BFS (поиск по ширине)?
void bfs(int n)
{
vis[n]=1; //marks n visited
d=0;
while(!adj[n].empty()) //adj is the array containing the adjacency lists
{if(!(vis[adj[n].front()]))
{
q.push(adj[n].front()); //q is the queue
}
adj[n].pop_front();
}
if(!q.empty()){
n=q.front();
cout<<n<< "->";
q.pop();
bfs(n);
}
}
что я могу сделать?
Просто пройти по дополнительной 'depth' параметра. При первом вызове 'bfs', перейдите 0. В рекурсивном вызове перейдите' depth + 1'. Таким образом: 'void bfs (int n, int depth) {... bfs (n, depth + 1); ...} ' –