फंक्शनल प्रोग्रामिंग में रिकर्शन

Programming Paradigm Concepts

Eleanor Thomas

Senior Data Analytics Engineer

रिकर्शन क्या है?

  • Recursive function: ऐसा फंक्शन जो खुद को कॉल करे
  • इसमें एक termination condition या base case होना चाहिए
  • साथ ही खुद को बदले हुए input के साथ recursive call भी होनी चाहिए
0 | def my_recursive_function(input_value):
1 |     # base case
2 |     if base_case_condition:
3 |        return base_case_output_value
4 |     # recursive call
5 |     else:
6 |        return my_recursive_function(modified_input_value) + some_modification
Programming Paradigm Concepts

रिकर्शन का उपयोग क्यों?

  • कुछ समस्याएँ रिकर्सिव रूप में परिभाषित करना सरल होता है
  • Fibonacci numbers:
    • 0, 1, ...
    • 0, 1, 1, ...
    • 0, 1, 1, 2, ...
    • 0, 1, 1, 2, 3, ...
Programming Paradigm Concepts

रिकर्शन के कुछ और उदाहरण

एक फाइल सिस्टम

  • फाइल सिस्टम में खोज करना
Programming Paradigm Concepts

रिकर्शन के कुछ और उदाहरण

एक फाइल सिस्टम; एक सॉर्टिंग विधि

  • फाइल सिस्टम में खोज करना
  • कुछ सॉर्ट एल्गोरिदम, जैसे Merge Sort
Programming Paradigm Concepts

रिकर्शन के कुछ और उदाहरण

एक फाइल सिस्टम; एक सॉर्टिंग विधि; एक डेटा स्ट्रक्चर

  • फाइल सिस्टम में खोज करना
  • कुछ सॉर्ट एल्गोरिदम, जैसे Merge Sort
  • कई डेटा स्ट्रक्चर रिकर्सिव रूप से परिभाषित होते हैं
Programming Paradigm Concepts

रिकर्शन बनाम iteration

  • हर recursive function को iterative रूप में भी लिखा जा सकता है
  • Iterative function, recursive call की जगह loop का उपयोग करता है
def iterative_factorial(n):
    result = 1
    for i in range(1, n + 1):
        result = result * i
    return result
Programming Paradigm Concepts

अभ्यास करते हैं!

Programming Paradigm Concepts

Preparing Video For Download...