Python में Recursion क्या है?

Python में Recursion एक ऐसी तकनीक है जिसमें एक function खुद को call करता है। इसका उपयोग तब किया जाता है जब हम किसी problem को छोटे subproblems में divide करना चाहते हैं। 

Recursion में function खुद को तब तक call करता है जब तक base condition पूरी नहीं हो जाती। Base condition वह condition होती है जो recursion को stop करती है।

Recursion का Structure

Recursion में दो मुख्य parts होते हैं:

  1. Base case – यह वह condition है जो recursion को रोकने का काम करती है।
  2. Recursive case – इसमें function खुद को call करता है।

Recursion का Syntax

def function_name(parameters):
    if base_condition:
        return value
    else:
        return function_name(modified_parameters)

Recursion का Example

मान लें, हमें किसी number के factorial को calculate करना है। Factorial को गणित में इस तरह लिखा जाता है:
n! = n × (n-1) × (n-2) × … × 1

उदाहरण के लिए:
5! = 5 × 4 × 3 × 2 × 1 = 120

Python में इसे इस प्रकार लिखा जा सकता है:-

# Factorial function using recursion
def factorial(n):
    if n == 0:  # Base case
        return 1
    else:
        return n * factorial(n-1)  # Recursive case

# Number for which factorial is to be calculated
number = 5
result = factorial(number)

print(f"{number}! = {result}")

Output:- 5! = 120

Recursion के प्रकार

इसके दो प्रकार होते हैं:-

1:- Direct Recursion: जब एक function खुद को direct call करता है तो उसे direct recursion कहते हैं।

Example:

def print_numbers(n):

    if n > 0:

        print(n)

        print_numbers(n-1)

2:- Indirect Recursion: जब एक function दूसरे function को call करता है, और वह दूसरा function पहले function को call करता है। तो इसे indirect recursion कहते है।

Example:

def func1(x):

    if x > 0:

        print(x)

        func2(x-1)

def func2(x):

    if x > 0:

        print(x)

        func1(x-1)

Recursion का दूसरा example:- Fibonacci Series

Fibonacci Series में हर number पिछले दो numbers का sum (योग) होता है। जैसे:
0,1,1,2,3,5,8,…

def fibonacci(n):
    if n <= 1:  # Base Case
        return n
    else:
        return fibonacci(n - 1) + fibonacci(n - 2)  # Recursive Case

# Function को call करें

terms = 6
for i in range(terms):
    print(f"Fibonacci({i}):", fibonacci(i))

Output:

Fibonacci(0): 0  
Fibonacci(1): 1  
Fibonacci(2): 1  
Fibonacci(3): 2  
Fibonacci(4): 3  
Fibonacci(5): 5  

इसे पढ़ें:-

Summary (सारांश)

Python में Recursion एक प्रोग्रामिंग तकनीक है, जिसमें एक function बार-बार खुद को call करता है और बड़ी problem को छोटे subproblems में तोड़ता है। यह article उन छात्रों के लिए बहुत useful है जो Python में functions की गहराई समझना चाहते हैं। इसमें recursion का structure, base case और recursive case को सरल भाषा में समझाया गया है। उदाहरण के तौर पर factorial calculation और Fibonacci series को शामिल किया गया है। साथ ही direct और indirect recursion के बीच का अंतर भी स्पष्ट किया गया है। इस article से छात्र सीखेंगे कि recursion को कैसे लिखना है, base condition क्यों जरूरी है, और function खुद को control करना कैसे सीखता है।

  • Exam में recursion से जुड़े प्रश्न हल करने में मदद मिलेगी।
  • Code writing और logic building की practice होगी।
  • Factorial और Fibonacci जैसे classic problems को समझना आसान होगा।
यह article उन सभी beginners के लिए perfect है, जो programming की मजबूत नींव रखना चाहते हैं और interviews या semester exams की तैयारी कर रहे हैं।

Leave a Comment