BFS vs. DFS

Autor: Laura McKinney
Data Utworzenia: 4 Kwiecień 2021
Data Aktualizacji: 11 Móc 2024
Anonim
5.1 Graph Traversals - BFS & DFS -Breadth First Search and Depth First Search
Wideo: 5.1 Graph Traversals - BFS & DFS -Breadth First Search and Depth First Search

Zawartość

Różnica między BFS, która jest wyszukiwaniem szerokości i DFS, która jest wyszukiwaniem głębokości polega na tym, że wyszukiwanie szerokości jest metodą przejścia graficznego, która wykorzystuje kolejkę do przechowywania odwiedzonych wierzchołków, podczas gdy wyszukiwanie głębokości jest metodą przejścia graficznego, która używa stosu do przechowywania odwiedzanych wierzchołków.


Pierwsze wyszukiwanie oddechu i pierwsze wyszukiwanie głębokości są jednymi z najważniejszych pojęć w programowaniu komputerowym. Wyszukiwanie w pierwszej kolejności odbywa się po ścieżce od początku do końca, która jest węzłem końcowym, z drugiej strony chleb po pierwsze, wyszukiwanie według poziomu. Jeśli mówimy o głównej różnicy, to główną różnicą między BFS, która jest wyszukiwaniem na szerokość, a DFS, która jest wyszukiwaniem na głębokość, jest to, że wyszukiwanie na szerokość jest metodą przemierzania grafów, która wykorzystuje kolejkę do przechowywania odwiedzonych wierzchołków, podczas gdy wyszukiwanie na podstawie głębokości to metoda przechodzenia przez wykres, która używa stosu do przechowywania odwiedzanych wierzchołków. Pierwsze wyszukiwanie, które nazywa się krótko BFS, BFS służy do przechodzenia przez wykres. Kolejka służy do przechowywania odwiedzonych wierzchołków w BFS. BFS działa na wierzchołkach, odwiedzane wierzchołki są przechowywane w kolejce. Wierzchołki są przechowywane jeden po drugim. Każdy węzeł na wykresie jest w pełni eksplorowany, a następnie odwiedzane są inne wierzchołki wykresu.


Głębokość Pierwsze wyszukiwanie, znane jako DFS, jest również metodą przejścia przez wykres, która wykorzystywała stos do przechowywania wierzchołków. Wyszukiwanie na szerokość nie jest metodą opartą na krawędzi, podczas gdy wyszukiwanie na głębokość jest metodą opartą na krawędzi. Wyszukiwanie wgłębne działa w sposób rekurencyjny, w którym wierzchołki są eksplorowane przez krawędzie. W ramach pierwszego wyszukiwania dogłębnie odwiedzane są wszystkie wierzchołki, które zostały dwukrotnie sprawdzone.

Spis treści: Różnica między BFS i DFS

  • Wykres porównania
  • BFS
  • DFS
  • Kluczowe różnice
  • Wniosek
  • Film wyjaśniający

Wykres porównania

PodstawaBFSDFS
ZnaczeniePierwsze wyszukiwanie szerokości to metoda przejścia na wykresie, która wykorzystuje kolejkę do przechowywania odwiedzonych wierzchołkówWyszukiwanie w pierwszej kolejności jest metodą przejścia przez wykres, która wykorzystuje stos do przechowywania odwiedzanych wierzchołków.
Algorytm Pierwsze wyszukiwanie szerokości jest algorytmem opartym na wierzchołkachGłębokie wyszukiwanie jest algorytmem krawędziowym
PamięćPierwsze wyszukiwanie szerokości jest nieefektywne pod względem pamięciGłębokie wyszukiwanie jest efektywne pod względem pamięci
Podanie Bada wykres dwustronny, połączony komponent i najkrótszą ścieżkę obecną na wykresie.Bada wykres połączony z dwoma krawędziami, wykres silnie połączony, wykres acykliczny i porządek topologiczny.

BFS

Pierwsze wyszukiwanie, które nazywa się krótko BFS, BFS służy do przechodzenia przez wykres. Kolejka służy do przechowywania odwiedzonych wierzchołków w BFS. BFS działa na wierzchołkach, odwiedzane wierzchołki są przechowywane w kolejce. Wierzchołki są przechowywane jeden po drugim. Każdy węzeł na wykresie jest w pełni eksplorowany, a następnie odwiedzane są inne wierzchołki wykresu. Wyszukiwanie szerokości jest używane do stwierdzenia, czy wykres jest podłączony czy nie. Do wykrycia dwudzielnego wykresu stosuje się wyszukiwanie szerokości. Znalezienie najkrótszych ścieżek odbywa się za pomocą BFS.


DFS

Głębokość Pierwsze wyszukiwanie, znane jako DFS, jest również metodą przejścia przez wykres, która wykorzystywała stos do przechowywania wierzchołków. Wyszukiwanie na szerokość nie jest metodą opartą na krawędzi, podczas gdy wyszukiwanie na głębokość jest metodą opartą na krawędzi.Wyszukiwanie wgłębne działa w sposób rekurencyjny, w którym wierzchołki są eksplorowane przez krawędzie. W wyszukiwaniu dogłębnym każdy wierzchołek odwiedzany jest raz, który został dwukrotnie sprawdzony.

Kluczowe różnice

  1. Wyszukiwanie w pierwszej kolejności to metoda przechodzenia przez wykres, która wykorzystuje kolejkę do przechowywania odwiedzonych wierzchołków, natomiast wyszukiwanie w pierwszej kolejności to metoda przechodzenia przez wykres, która używa stosu do przechowywania odwiedzanych wierzchołków.
  2. Wyszukiwanie na szerokość jest algorytmem opartym na wierzchołkach, podczas gdy wyszukiwanie na głębokość jest algorytmem na krawędzi
  3. Wyszukiwanie w pierwszej kolejności jest nieefektywne pod względem pamięci, natomiast wyszukiwanie w pierwszej kolejności jest efektywne pod względem pamięci.
  4. Bada graf dwuczęściowy, połączony komponent i najkrótszą ścieżkę obecną na grafie, natomiast bada dwuwarstwowy połączony wykres, silnie połączony wykres, wykres acykliczny i porządek topologiczny.

Wniosek

W powyższym artykule widzimy wyraźną różnicę między pierwszym wyszukiwaniem oddechu a pierwszym wyszukiwaniem głębokości z implementacją.

Film wyjaśniający