collection.Where(i => i.condition)
.ToList()
.ForEach(i => SomeComplicatedOpInvolving_i);
मैं जवाब देने की कोशिश नहीं कर रहा हूं कि ऐसा करने का एक आसान तरीका है, बस इसे एक प्रयोग प्रयोग के रूप में देखें।क्या मैं सोच रहा हूं कि यह स्निपेट ओ (एन^3) है?
सबसे पहले, क्या मैं सोच रहा हूं कि यह तीन लूप है? Where()
, ToList()
और ForEach()
?
सबसे दूसरा, (मान लीजिए कि यह तीन लूप है) क्या मैं सोच रहा हूं कि यह बड़ी ओ नोटेशन में 3 की शक्ति के लिए है?
सभी को धन्यवाद।
क्या यह कुछ कॉम्प्लेक्टेड ओपइनवॉलविंग_आई पर निर्भर नहीं करता है? – AndrewC
यदि हम मानते हैं कि 'संग्रह' प्रकार' IEnumerable 'प्रकार है, तो यह आलसी लोडिंग के कारण केवल ओ (2 * एन) होगा। –
ebb
'toList'' न करें क्योंकि आप सामान्य 'foreach() 'लूप का उपयोग नहीं करना चाहते हैं, क्योंकि सूची बनाने और भरने से इस स्निपेट में अब तक का सबसे गहन ऑपरेशन है। – Dykam