Il existe plusieurs différences entre DFS et BFS (réponse courte: Les deux peuvent trouver le chemin le plus court dans le graphique non pondéré). BFS et DFS donneront le chemin le plus court de A à B si vous avez correctement implémenté.
Le chemin le plus court est-il DFS ou BFS ?
BFS trouve le chemin le plus court vers la destination tandis que DFS va au bas d'un sous-arbre, puis revient en arrière. La forme complète de BFS est la recherche en largeur d'abord tandis que la forme complète de DFS est la recherche en profondeur d'abord. BFS utilise une file d'attente pour garder une trace du prochain lieu à visiter.
DFS peut-il trouver le chemin le plus court dans le graphique pondéré ?
Comme avec BFS, DFS peut être utilisé pour trouver tous les sommets accessibles à partir d'un sommet de départ v, pour déterminer si un graphe est connecté ou pour générer un arbre couvrant. Contrairement à BFS, il ne peut pas être utilisé pour trouver les chemins non pondérés les plus courts.
Pouvez-vous utiliser BFS pour trouver le chemin le plus court ?
Techniquement, la recherche en largeur d'abord (BFS) en elle-même ne vous permet pas de trouver le chemin le plus court, simplement parce que BFS ne recherche pas le chemin le plus court: BFS décrit une stratégie pour rechercher un graphique, mais cela ne dit pas que vous devez rechercher quoi que ce soit en particulier.
Pouvons-nous utiliser DFS à Dijkstra ?
2 Réponses. DFS continue de sauter le long des nœuds jusqu'à ce qu'il trouve un chemin, alors que Dijkstra est plus similaire à un BFS sauf qu'il garde une trace des poids (tous les chemins n'ont pas le même coût) et continuera à vérifier le chemin le plus courtpas déjà vérifié jusqu'à ce qu'il atteigne la cible.