Python में Recursion एक ऐसी तकनीक है जिसमें एक function खुद को call करता है। इसका उपयोग तब किया जाता है जब हम किसी problem को छोटे subproblems में divide करना चाहते हैं।
Recursion में function खुद को तब तक call करता है जब तक base condition पूरी नहीं हो जाती। Base condition वह condition होती है जो recursion को stop करती है।
Recursion का Structure
Recursion में दो मुख्य parts होते हैं:
- Base case – यह वह condition है जो recursion को रोकने का काम करती है।
- 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 को समझना आसान होगा।