Obie można użyć do znalezienia najkrótszej ścieżki z jednego źródła. BFS działa w O (E + V), podczas gdy Dijkstra działa w O ((V + E) * log (V)).Dlaczego warto korzystać z algorytmu Dijkstry, jeśli funkcja Szerokie pierwsze wyszukiwanie (BFS) może zrobić to samo szybciej?
Ponadto widziałem, że Dijkstra używane było bardzo podobnie do protokołów routingu.
W związku z tym, dlaczego warto zastosować algorytm Dijkstry, jeśli BFS może zrobić to samo szybciej?
Obie dadzą takie same wyniki, tj. Ścieżkę między dwoma wierzchołkami, ale tylko dijkstra zagwarantuje najkrótszą ścieżkę. – Edwin
Zobacz zaakceptowaną odpowiedź, drugi komentarz. Bardzo dobry sposób wyjaśnienia, dlaczego złożoność obliczeniowa jest inna: https://stackoverflow.com/questions/25449781/what-is-difference-between-bfs-and-dijkstras-algorithms-when-looking-for-shorte – jmcarter9t