SORU
14 Aralık 2010, Salı


SERİ Yüzüğü: () Herhangi bir vs İçerir() Büyük Koleksiyonları için

Nesneleri büyük bir koleksiyonu göz önüne alındığında, aşağıdaki arasında bir performans farkı var mı?

Collection.Contains:

myCollection.Contains(myElement)

Enumerable.Any:

myCollection.Any(currentElement => currentElement == myElement)

CEVAP
14 Aralık 2010, Salı


() İçeren bir örnek yöntemi, performansı büyük ölçüde koleksiyonu kendisi bağlıdır. Örneğin, () İçeren bir Liste üzerinde taşıdığı sürece, O(n), () bir HashSet O(1).

() Herhangi bir uzantısı bir yöntem olduğunu ve sadece toplama yoluyla, her nesne üzerinde temsilci uygulaması gerekiyor. Bu nedenle O bir karmaşıklık(n) vardır.

() Herhangi bir temsilci iletebilirsiniz ancak bu yana. daha esnektir () İçeren tek bir nesne kabul edebilir.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • EEVblog

    EEVblog

    4 NİSAN 2009
  • Kyler Briskey

    Kyler Briske

    20 ŞUBAT 2011
  • sinumatic

    sinumatic

    19 Aralık 2006