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

  • Evan Coury

    Evan Coury

    29 NİSAN 2007
  • jocc talking shit

    jocc talking

    6 NİSAN 2007
  • Megan Parken

    Megan Parken

    19 Temmuz 2009