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

  • bigky226

    bigky226

    11 HAZİRAN 2006
  • Jason Rosolowski

    Jason Rosolo

    25 EKİM 2006
  • njhaley

    njhaley

    24 NİSAN 2006