जब रिकर्सन तकनीक का उपयोग करके नेस्टेड लिस्ट का कुल योग खोजने की आवश्यकता होती है, तो एक यूज़र-डिफाइंड मेथड का उपयोग किया जाता है, जो लिस्ट को पैरामीटर के रूप में लेता है।
रिकर्सन बड़ी समस्या के छोटे-छोटे टुकड़ों का आउटपुट कंप्यूट करता है, और इन टुकड़ों को बड़ी समस्या का समाधान देने के लिए जोड़ता है।
एक लिस्ट का उपयोग विषम मानों को स्टोर करने के लिए किया जा सकता है (यानी पूर्णांक, फ्लोटिंग पॉइंट, स्ट्रिंग्स जैसे किसी भी डेटा टाइप का डेटा)।
उदाहरण
इसके लिए एक प्रदर्शन नीचे दिया गया है:
def recursion_sum(my_list):
my_total = 0
for elem in my_list:
if type(elem) == type([]):
my_total = my_total + recursion_sum(elem)
else:
my_total = my_total + elem
return my_total
my_list = [[2, 3], [7, 9], [11, 45], [78, 98]]
print("The list elements are :")
print(my_list)
print("The sum is :")
print(recursion_sum(my_list))आउटपुट
The list elements are : [[2, 3], [7, 9], [11, 45], [78, 98]] The sum is : 253
व्याख्या
- 'recursion_sum' नामक एक मेथड परिभाषित किया गया है, जिसमें लिस्ट एक पैरामीटर के रूप में है।
- प्रारंभ में, एक वेरिएबल को 0 असाइन किया जाता है।
- लिस्ट में एलिमेंट्स पर इटरेट किया जाता है, और यदि उनका प्रकार मेल खाता है, तो लिस्ट में एलिमेंट्स जोड़े जाते हैं, और मेथड को फिर से कॉल किया जाता है।
- अन्यथा, एलिमेंट्स को केवल एक वेरिएबल में जोड़ा जाता है।
- यह वेरिएबल आउटपुट के रूप में कंसोल पर प्रदर्शित होता है।
- फ़ंक्शन के बाहर, नीचे के ऑपरेशन्स होते हैं:
- नेस्टेड लिस्ट परिभाषित की जाती है, और कंसोल पर प्रदर्शित की जाती है।
- मेथड को इस लिस्ट को पैरामीटर के रूप में पास करके कॉल किया जाता है।
- आउटपुट कंसोल पर प्रदर्शित किया जाता है।