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

  • BenjiManTV

    BenjiManTV

    20 Mart 2011
  • SuppressedStorm

    SuppressedSt

    11 AĞUSTOS 2013
  • THE RED DRAGON

    THE RED DRAG

    6 ŞUBAT 2009