SORU
20 Temmuz 2010, Salı


Bellek, avantaj ve dezavantajları üç yolu bir grafik saklamak için

Bellekte bir grafik saklamak için üç yolu vardır:

  1. İşaretçiler, nesneleri ve kenarları gibi düğümler
  2. Bir matris numaralı düğüm arasındaki kenar ağırlıkları x ve y içeren düğüm
  3. Numaralandırılmış düğümler arasındaki kenarlar listesi

Her üç yazmak için nasıl biliyorum, ama her avantajları ve dezavantajları tüm düşündüm emin değilim.

Bellekte bir grafik depolama bu yollardan her birinin avantaj ve dezavantajları nelerdir?

CEVAP
20 Temmuz 2010, Salı


Bu analiz için bir yolu, bellek ve zaman karmaşıklığı grafik erişmek istediğiniz nasıl bağlıdır) açısından.

Bir başka işaretçisi ile nesneler olarak saklanması düğümler

  • Bu yaklaşım, bellek karmaşıklığı düğüm gibi çok sayıda nesne var çünkü O(n) ' dir. İşaretçiler (düğüm) sayısı gerekli her düğüm nesne n düğümler için işaretçileri içerebilir olarak O(n^2).
  • Bu veri yapısı için zaman karmaşıklığı(n) herhangi bir düğüm erişmek için O.

Kenar ağırlıkları matris depolama

  • Bu matris için O(n^2) bellek karmaşıklığı olacaktır.
  • Bu veri yapısı ile avantajı herhangi bir düğüm erişmek için zaman karmaşıklığı O(1) ' dir.

Kaç tane grafik üzerinde çalıştırmak ve ne bağlı olarak, uygun bir temsili seçim yapmak zorunda kalacaksın.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • jedimasterkyle

    jedimasterky

    11 ŞUBAT 2006
  • Subscribe!!

    Subscribe!!

    3 EKİM 2009
  • THELIFEOFPRICE

    THELIFEOFPRI

    16 Mart 2011