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

  • André Frizzo

    André Frizz

    16 Aralık 2006
  • Gan Eden Productions

    Gan Eden Pro

    11 HAZİRAN 2011
  • Phymec

    Phymec

    18 Temmuz 2009