SORU
29 EYLÜL 2010, ÇARŞAMBA


Kullanmak neden'in eğer Genişlik öncelikli Arama (BFS) aynı şeyi daha hızlı yapabiliyorsa Algoritması Dijkstra?

Her ikisi de tek bir kaynaktan en kısa yolu bulmak için kullanılır. BFS dijkstra'nın O((V E)*log(V)) çalışırken O(E V) çalışır.

Ayrıca, Dijkstra bir sürü yönlendirme protokolleri gibi kullanıldığını gördüm.

Neden eğer BFS aynı şeyi daha hızlı yapabiliyorsa dijkstra'nın algoritması kullanın böylece?

CEVAP
29 EYLÜL 2010, ÇARŞAMBA


Dijkstra her adım için 1 atama mesafeleri sağlar. Mesafeler (ya da ağırlık) yönlendirme örneğin, hız, maliyet, tercih, vb tarafından atanmış olabilir. Algoritma sonra geçilen grafikte her düğüm için bir kaynaktan en kısa yolu verir.

Bu arada BFS temelde sadece genişler arama tarafından bir “adım” (bağlantı, edge, siz nasıl tanımlıyorsanız bu uygulama) her yineleme, hangisi olursa etkisi bulma en küçüğüsayı basamaklarıkaynak herhangi bir düğümde alır (“”) kök.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • bunliu

    bunliu

    2 Mayıs 2007
  • Electro Posé

    Electro Pos

    21 ŞUBAT 2013
  • jcortes187

    jcortes187

    24 Mart 2006