The BFS algorithm