Graf geçişi için iki temel algoritma: Genişlik Öncelikli Arama (BFS) ve Derinlik Öncelikli Arama (DFS).

Genişlik Öncelikli Arama (BFS)

Başlangıç düğümünden başlayarak katman katman, tüm komşuları ziyaret eden algoritma.

Çalışma Prensibi:

  1. Başlangıç düğümünü kuyruğa ekle
  2. Kuyruk boş olmadığı sürece:
  3. Kuyruğun önündeki düğümü çıkar
  4. Ziyaret edilmemiş komşularını kuyruğa ekle

Kullanım Alanları:

  • En kısa yol bulma (ağırlıksız graflarda)
  • Sosyal ağlarda bağlantı seviyesi
  • Web crawling

Derinlik Öncelikli Arama (DFS)

Mümkün olduğunca derinlemesine giden, sonra geri dönen algoritma.

Çalışma Prensibi:

  1. Başlangıç düğümünü ziyaret et
  2. Ziyaret edilmemiş komşuları için DFS çağır
  3. Geri dön (backtrack)

Kullanım Alanları:

  • Döngü tespiti
  • Topolojik sıralama
  • Labirent çözme
  • Bağlı bileşen bulma

BFS vs DFS Karşılaştırması

ÖzellikBFSDFS
Veri YapısıKuyrukYığın/Özyineleme
En Kısa YolBulurBulmaz
BellekDaha fazlaDaha az