रिकर्सन एक प्रोग्रामिंग मेथड है, जिसमें फंक्शन अपने शरीर में एक या अधिक बार स्वयं को कॉल करता है। आमतौर पर, यह इस फंक्शन कॉल के रिटर्न मान को लौटाता है। यदि फंक्शन परिभाषा रिकर्सन का पालन करती है, तो हम इस फंक्शन को रिकर्सिव फंक्शन कहते हैं।
एक रिकर्सिव फंक्शन को प्रोग्राम में उपयोग किए जाने के लिए समाप्त होना पड़ता है। यह समाप्त होता है, यदि हर रिकर्सिव कॉल के साथ समस्या का समाधान छोटा होता जाता है और बेस केस की ओर बढ़ता है, जहां समस्या को आगे रिकर्सन के बिना हल किया जा सकता है। यदि कॉल्स में बेस केस पूरा नहीं होता है तो रिकर्सन अनंत लूप का कारण बन सकता है।
उदाहरण
निम्न कोड रिकर्सिव पायथन फंक्शन का उपयोग करके पहले n प्राकृतिक संख्याओं का योग लौटाता है।
def sum_n(n):
if n== 0:
return 0
else:
return n + sum_n(n-1)
यह पहले 100 प्राकृतिक संख्याओं और पहले 500 प्राकृतिक संख्याओं का योग प्रिंट करता है:
print(sum_n(100)) print(sum_n(500))
आउटपुट
C:/Users/TutorialsPoint1/~.py 5050 125250