मेरे पास एक सूची है।
1 2 3 4 5 6 7
मैं लगातार तत्वों के बीच अंतर (deltas) की एक सूची वापस करना चाहता हूं।
1 1 1 1 1 1
कैसे क्या मैं यह कर सकता हूं?
मुझे यकीन है कि ऐसा करने का एक सरल "संग्रह" तरीका होना चाहिए - लेकिन मुझे यह नहीं मिल रहा है।
आप एन्युमेरेबल। स्किप
का उपयोग कर सकते हैं और सूचकांक की प्रोजेक्ट्स का अधिभार:
सूची & lt; int & gt; DeltaList = list.Skip (1) // पहले छोड़ें, अप्रासंगिक। चयन करें ((num, index) = & gt; num - list [index]) सूचकांक 0 सूची में दूसरा नंबर है .ओलिस्ट ();
चाल यही है कि छोड़ें (1)
न केवल पहली संख्या को छोड़ देता है (जो वांछित है) परन्तु यह भी चुनें । प्रथम संख्या का
अनुक्रमणिका 0 हो जाएगा, लेकिन यह सूची में दूसरी संख्या का उल्लेख करेगा (
छोड़ें (1)
के कारण)। इसलिए num - list [index]
पिछले संख्या के साथ वर्तमान को घटा देता है।
Comments
Post a Comment