मैं सूची से वस्तुओं को फ़िल्टर करने के बारे में कुछ तुलना कर रहा हूं। मैं इसे सीधे करने के लिए अनिश्चित हूं जो ओ (एन), या उपयोग कर रहे हैं। जहां()। एक साधारण डेटा सेट पर I made a simple example to test .Where()
। एन = 100 आइटम हैं, और जब मैं फंक्शन BigO()
में लाइन पर डीबगर चलाता हूं तो मुझे लगता है कि यह 100 गुना मुझे लगता है। जहां भी() ओ (एन) है। जो मैं समझ नहीं पाया था, जहां ऑपरेशन के दौरान डेटा संग्रहीत किया जा रहा था और मुझे यकीन नहीं था कि क्या कोई जटिलता बढ़ रही है।linq के बिग ओ क्या है। कहाँ?
क्या मुझे कुछ याद आ रहा है, या है। जहां() ओ (एन)?
public class ListerFactory
{
public class Lister
{
bool includeItem { get; set; }
}
List<Lister> someList { get; set; }
public ListerFactory()
{
someList = new List<Lister>();
BuildLister();
}
public void BuildLister()
{
for(int i = 0; i < 100; i++)
{
var inc = new Lister();
inc.includeItem = i % 2;
someList.Add(inc);
}
BigO();
}
public void BigO()
{
someList = someList.Where(thisList => thisList.includeItem == true).ToList();
}
}
LINQ से _what_? यह महत्वपूर्ण नहीं है ... – SLaks
जॉन स्कीट्स एडुलिनक देखें, चीजें काम करने के तरीके के बारे में बहुत सी बातें जल्द ही स्पष्ट हो जाएंगी। वास्तव में, आप जल्दी से महसूस करेंगे कि सिस्टम वास्तव में कितना सरल है। https://msmvps.com/blogs/jon_skeet/archive/tags/Edulinq/default.aspx –
@SLaks - LINQ से ऑब्जेक्ट्स। यह पूरे foreach loops लिखने से पढ़ने के लिए आसान हो जाता है। –