BFS vs. DFS

Auteur: Laura McKinney
Date De Création: 4 Avril 2021
Date De Mise À Jour: 13 Peut 2024
Anonim
5.1 Graph Traversals - BFS & DFS -Breadth First Search and Depth First Search
Vidéo: 5.1 Graph Traversals - BFS & DFS -Breadth First Search and Depth First Search

Contenu

La différence entre BFS (recherche d'abord large) et DFS (recherche approfondie) est que cette méthode est une méthode de parcours de graphe utilisant une file d'attente pour stocker les sommets visités, alors que la recherche de profondeur premier est une méthode de déplacement de graphique utilisant la pile. pour stocker les sommets visités.


La recherche d'abord en respiration et la recherche en profondeur d'abord sont l'un des concepts les plus importants de la programmation informatique. La recherche d'abord en profondeur suit un chemin du début à la fin, qui est le nœud de fin, par contre, effectue la première recherche travail niveau par niveau. Si nous parlons de la différence principale, la principale différence entre BFS (recherche approfondie en largeur) et DFS (recherche profondeur-avant) est que la recherche largeur-première est une méthode de déplacement de graphique qui utilise une file d'attente pour stocker les sommets visités, alors que la recherche profondeur-avant Cette méthode utilise la pile pour stocker les sommets visités. La recherche en largeur d'abord appelée BFS, BFS est utilisée pour parcourir le graphique. La file d'attente est utilisée pour stocker les sommets visités dans BFS. BFS fonctionne sur les sommets, les sommets visités sont stockés dans la file d'attente. Les sommets sont stockés un par un. Chaque nœud d'un graphique est entièrement exploré, puis les autres sommets du graphe sont visités.


La recherche Depth First appelée DFS est également une méthode de déplacement de graphe utilisant la pile pour stocker les sommets. La recherche en largeur d'abord n'est pas une méthode basée sur les bords, alors que la recherche en profondeur d'abord est une méthode basée sur les bords. La recherche d'abord en profondeur fonctionne de manière récursive, les sommets étant explorés à travers les arêtes. Lors de la première recherche en profondeur, chaque sommet est visité une fois inspecté deux fois.

Contenu: Différence entre BFS et DFS

  • Tableau de comparaison
  • BFS
  • DFS
  • Différences Clés
  • Conclusion
  • Vidéo explicative

Tableau de comparaison

BaseBFSDFS
SensLa première recherche en largeur est une méthode de déplacement de graphique qui utilise une file d'attente pour stocker les sommets visitésLa recherche en profondeur d'abord est une méthode de déplacement de graphique qui utilise la pile pour stocker les sommets visités.
Algorithme La première recherche en largeur est un algorithme basé sur les vertexLa recherche en profondeur d'abord est un algorithme basé sur les bords
MémoireLa première recherche en profondeur est inefficace de la mémoireLa recherche en profondeur d'abord est efficace en mémoire
Application Examine le graphe bipartite, la composante connectée et le chemin le plus court présent dans un graphe.Examine le graphe connecté à deux arêtes, le graphe fortement connecté, le graphe acyclique et l'ordre topologique.

BFS

La recherche en largeur d'abord appelée BFS, BFS est utilisée pour parcourir le graphique. La file d'attente est utilisée pour stocker les sommets visités dans BFS. BFS fonctionne sur les sommets, les sommets visités sont stockés dans la file d'attente. Les sommets sont stockés un par un. Chaque nœud d'un graphe est entièrement exploré, puis les autres sommets du graphe sont visités. La recherche en largeur d'abord est utilisée pour trouver que le graphique est connecté ou non. La recherche en largeur d'abord est utilisée pour détecter un graphe bipartite. La recherche des chemins les plus courts est effectuée à l'aide de BFS.


DFS

La recherche Depth First appelée DFS est également une méthode de déplacement de graphe utilisant la pile pour stocker les sommets. La recherche en largeur d'abord n'est pas une méthode basée sur les bords, alors que la recherche en profondeur d'abord est une méthode basée sur les bords.La recherche d'abord en profondeur fonctionne de manière récursive, les sommets étant explorés à travers les arêtes. Lors d'une recherche en profondeur d'abord, chaque sommet est visité une fois, puis inspecté deux fois.

Différences Clés

  1. La recherche en largeur d'abord est une méthode de déplacement de graphique qui utilise une file d'attente pour stocker les sommets visités, tandis que la recherche en profondeur d'abord est une méthode de déplacement de graphique qui utilise la pile pour stocker les sommets visités.
  2. La recherche en largeur d'abord est un algorithme basé sur le sommet, alors que la recherche en profondeur d'abord est un algorithme basé sur le bord
  3. La recherche en largeur d'abord est inefficace en mémoire, tandis que la recherche en profondeur est efficace en mémoire.
  4. Examine le graphe bipartite, la composante connectée et le chemin le plus court présent dans un graphe, tandis que le graphe connecté à deux arêtes, le graphe fortement connexe, le graphe acyclique et l'ordre topologique.

Conclusion

Dans cet article, nous voyons la différence évidente entre la recherche en premier souffle et la recherche en profondeur avec la mise en œuvre.

Vidéo explicative