ट्रैक
/
Dart
Dart
/
अभ्यास
/
ऐरे ऑपरेशन
ऐरे ऑपरेशन

ऐरे ऑपरेशन

मध्यम

निर्देश

ऐरे के बुनियादी ऑपरेशन लागू कीजिए।

फंक्शनल भाषाओं में length, map और reduce जैसे ऐरे ऑपरेशन बहुत आम हैं। पहले से मौजूद फंक्शन इस्तेमाल किए बिना बुनियादी ऐरे ऑपरेशनों की एक श्रृंखला लागू कीजिए।

लागू किए जाने वाले ऑपरेशनों की सही संख्या और नाम इस बात पर निर्भर करते हैं कि आप किस ट्रैक पर हैं, ताकि मौजूदा नामों से टकराव न हो। आम तौर पर आपको जो ऑपरेशन लागू करने होंगे, उनमें ये शामिल हैं:

  • append (दो ऐरे दिए जाने पर, दूसरे ऐरे के सारे एलिमेंट पहले ऐरे के अंत में जोड़िए);
  • concatenate (ऐरों की एक श्रृंखला दिए जाने पर, सभी ऐरों के सारे एलिमेंट मिलाकर एक ही समतल ऐरे बनाइए);
  • filter (एक प्रेडिकेट और एक ऐरे दिए जाने पर, वे सारे एलिमेंट वाला ऐरे लौटाइए जिनके लिए predicate(item) सही होता है);
  • length (एक ऐरे दिए जाने पर, उसमें मौजूद कुल एलिमेंट की संख्या लौटाइए);
  • map (एक फंक्शन और एक ऐरे दिए जाने पर, हर एलिमेंट पर function(item) लागू करने के नतीजों वाला ऐरे लौटाइए);
  • foldl (एक फंक्शन, एक ऐरे और शुरुआती एक्युमुलेटर दिए जाने पर, हर एलिमेंट को बाईं ओर से एक्युमुलेटर में फोल्ड (रिड्यूस) कीजिए);
  • foldr (एक फंक्शन, एक ऐरे और एक शुरुआती एक्युमुलेटर दिए जाने पर, हर एलिमेंट को दाईं ओर से एक्युमुलेटर में फोल्ड (रिड्यूस) कीजिए);
  • reverse (एक ऐरे दिए जाने पर, एक ऐसा ऐरे लौटाइए जिसमें सारे मूल एलिमेंट हों, लेकिन उलटे क्रम में)।

ध्यान रखिए कि फोल्ड फंक्शनों (foldl, foldr) को आर्गुमेंट किस क्रम में दिए जाते हैं, यह महत्वपूर्ण है।

Dart के लिए खास निर्देश

append मेथड उसी List को बदल देता है जिस पर उसे कॉल किया जाता है। बाकी सभी मेथड एक नया List लौटाते हैं।

हम पहले से मौजूद मेथड और प्रॉपर्टी को अपने मेथड से नहीं बदल सकते। इसलिए length की जगह count बनाइए और map की जगह myMap बनाइए।

आप List क्लास में एक्सटेंशन मेथड जोड़ेंगे। कोशिश कीजिए कि List और Iterable के पहले से मौजूद मेथड और प्रॉपर्टी पर बहुत ज़्यादा निर्भर न करें। जितना हो सके, यह सारा काम खुद लिखिए।

आप देखेंगे कि दी गई स्टब फाइल जेनेरिक्स का इस्तेमाल करती है।

GitHub के ज़रिए संपादित करें यह लिंक एक नई विंडो या टैब में खुलता है
Dart Exercism

ऐरे ऑपरेशन शुरू करने के लिए तैयार हैं?

Exercism पर साइन अप कीजिए और Dart को 78 अभ्यास तथा असली इंसानों से मिलने वाली मेंटरिंग के साथ सीखिए और उसमें महारत हासिल कीजिए, वह भी बिल्कुल मुफ्त।

ऐरे ऑपरेशन को गहराई से जानिए!

रिकर्शन का एक व्यावहारिक परिचय पाइए, ऐरे ऑपरेशन के इम्पेरेटिव और फंक्शनल विकल्प जानिए, और टेल-कॉल रिकर्शन तथा एक्युमुलेटर फंक्शनों की गहराई में उतरिए।