हेल्लो पाठकों !
क्या आप जानना चाहते है, रिकर्सन क्या है, रिकर्सिव एल्गोरिदम क्या है (What is Recursive Algorithm in Hindi), एल्गोरिदम में रिकर्सन का उपयोग क्या है और रिकर्सन का उपयोग करके किसी विशेष समस्या का कैसे हल किया जा सकता है ।
यदि आप कंप्यूटर प्रोग्रामिंग और एल्गोरिदम में रूचि रखते है तो आपको रिकर्सन के बारे में जानकारी होना बहुत जरूरी है ।
तो चलिए Recursion एवं Recursive Algorithm के बारे में सीखते है ।
रिकर्सन क्या है (What is Recursion) ?
रिकर्सन का हिन्दी अर्थ है पुनारावर्ती या प्रत्यावर्तन । किसी विशेष परिणाम या प्रभाव को उत्पन्न करने के लिए एक ही बात को कई बार करना या कहने को रिकर्सन कहते है ।
रिकर्सन को उस प्रक्रिया के रूप में परिभाषित किया जाता है जो किसी समस्या को सरल बनाने के लिए स्वयं को संदर्भित करता है ।
यह एक वह प्रक्रिया जिसमें कोई फंक्शन स्वयं को प्रत्यक्ष या परोक्ष रूप से कॉल करता है, रिकर्सन कहलाता है ।
रिकर्सन बड़ी और जटिल समस्याओं को छोटी और आसानी से हल करने योग्य समस्याओं मे सरल बनाने की प्रक्रिया है । पुनरावर्तन में, हम बड़ी समस्याओं को उसके उप -भागों में विभाजित करते हैं और समस्या को हल करने के लिए उप-भागों को फिर से दोहराते है ।
रिकर्सिव एल्गोरिदम क्या है (What is Recursive Algorithm) ?
रिकर्सिव एल्गोरिदम एक ऐसी एल्गोरिदम है जो खुद को छोटे या सरल इनपुट मानों के साथ कॉल करता है, और जो छोटे या सरल इनपुट के लिए दिए गए मान पर सरल ऑपरेशन लागू करके वर्तमान इनपुट के लिए परिणाम प्राप्त कारता है ।
हमारे द्वारा की जाने वाली सभी प्रोग्रामिंग में रिकर्सिव एल्गोरिदम एक बड़ी भूमिका निभाते हैं । सरल कंप्यूटेषनल समस्याओं के लिए रिकर्सन का उपयोग करना आवश्यक नहीं है, लेकिन अगर हम एल्गोरिदम को रिकर्सिव रूप से परिभाषित करते है, तो त्रुटियों को लिखना, अध्ययन करना और जांचना बहुत आसान हो जाता है ।
रिकर्सिव एल्गोरिदम को कोड की बहुत कम पंक्ति की आवश्यकत होती है क्योंकि यह अलग-अलग डेटा पर एक ही प्रक्रिया को बार-बार निष्पादित करता है ।
रिकर्सिव प्रक्रिया की अवधारणा के सफल कार्यान्वयन के लिए निम्नलिखित षर्तों को पूरा किया जाना चाहिए :-
- कंप्यूटर सिस्टम में एक इन बिल्ट मैकेनिज्म होना चाहिए जो प्रक्रिया को कॉल करने का समर्थन करता हो ।
- एक रिकर्सिव प्रक्रिया की परिभाशा के भीतर शर्तें होनी चाहिए, जिसके तहत, सीमित संख्या में कॉल के बाद, प्रक्रिया समाप्त हो जाती है ।
- क््रमिक कॉलों में तर्क इस अर्थ में सरल होना चाहिए कि प्रत्येक सफल तर्क हमें दूसरी में उल्लिखित शर्तों की ओर ले जाता है ।
रिकर्सिन कितने प्रकार के है (Types of Recursion) ?
- Direct Recursion
- Indirect Recursion
Direct Recursion
जब कोई फंक्शन खुद को एक ही फंक्शन में बार-बार कॉल करता है, तो इसे डायरेक्ट रिकर्सन कहा जाता है ।
Indirect Recursion
जब किसी फंक्शन को किसी अन्य फंक्शन द्वारा गोलाकार तरीके से पारस्परिक रूप से बलाया जाता है, तो फंक्शन को इनडायरेक्ट रिकर्सन फंक्शन कहा जाता है ।
इनडायरेक्ट रिकर्सन, रिकर्सन का एक रूप है जिसमें एक फंक्शन P दूसरे फंक्शन Q को कॉल करता है, और Q बदले में P को अपने बॉडी में कॉल करता है ।
एल्गोरिदम में रिकर्सन का उपयोग क्या है (Uses of Recursion) ?
जब आप रिकर्सन के बारे में सीखते हैं, तो सबसे पहले इसका क्या उपयोग है इस बारे में जानना जरूरी है ।
रिकर्सन का सबसे बड़ा लाभ यह जटिल एल्गोरिदम को लिखना आसान बनाते है और मनुष्यों द्वारा पढ़ सकता है । इसलिए रिकर्सन का उपयोग करने का मुख्य कारण एक एल्गोरिदम को सरल बनाना है जिसे अधिकांष लोग आसानी से समझ सकते है ।
रिकर्सन एल्गोरिदम समस्याओं को हल करने का एक बेहतर तरीका बनात है । आप एक जटिल कोड को सरल बनाने के लिए रिकर्सन का उपयोग कर सकते हैं । षुरूयात में, रिकर्सन और रिकर्सिव एल्गोरिदम का अध्ययन जटिल लगता है, लेकिन एक बार जब हम आधार प्रक्रिया की पहचान कर लेत हैं तो इसे समझना आसान हो जाता है ।
अक्सर प्रोग्रामिंग एल्गोरिदम को आसानी से अध्ययन करने के लिए रिकर्सन का उपयोग करके लिखा जाता है ।
कुछ मामलों में रिकर्सन प्रोग्रामिंग में बहुत समय और स्थान लेता है । हम रिकर्सन का उपयोग केवल तभी करते हैं जब समस्या को पुनरावर्ती रूप से परिभाषित किया जाता है । आमतौर पर हम अप्रत्यक्ष रिकर्सन से अधिक प्रत्यक्ष रिकर्सन का उपयोग करते हैं ।
प्रसिद्ध रिकर्सिव एल्गोरिदम क्या है (Famous Recursive Algorithms) ?
- Finding the GCD of two numbers
- Finding the nth Fibonacci
- Tower of Hanoi problem
- Binary search
- Merge sort
- Quick sort
- Reverse an array
- Reverse a linked list
- Post order traversal of the binary tree
- Print all permutation of a given string
निर्ष्कष – Conclusion
मुझे आशा है आपने रिकर्सन क्या है, रिकर्सिव एल्गोरिदम क्या है What is Recursive Algorithm in Hindi), एल्गोरिदम में रिकर्सन का उपयोग क्या है इन सबके में आपने अच्छे से सीख लिया हैं ।
अगर फिर भी आपके मन में रिकर्सिव एल्गोरिदम के बारे में कोई भी सवाल है तो आप हमें कमेंट करके जानकारी प्राप्त कर सकते है ।