Visited Set To Avoid Revisits
Identify why this BFS still processes nodes multiple times.
Codejavascript
function bfs(graph, start) {
const visited = new Set();
const queue = [start];
const order = [];
while (queue.length > 0) {
const node = queue.shift();
order.push(node);
for (const next of graph[node]) {
queue.push(next);
}
visited.add(node);
}
return order;
}What is the bug that lets nodes get revisited?