HomeProgrammingसी प्रोग्रामिंग में रिकर्सन क्या है | What is Recursion in C...

सी प्रोग्रामिंग में रिकर्सन क्या है | What is Recursion in C in Hindi

हेल्लो पाठकों !

क्या आप जानना चाहते है, सी प्रोग्रामिंग में रिकर्सन क्या है (What is Recursion in C programming in Hindi), रिकर्सन का उपयोग क्यों करते है और सी प्रोग्रामिंग में रिकर्सन का इस्तेमाल करने से क्या फायदे है ।

तो चलिए Recursion के बारे में विस्तार से जानते है ।

सी प्रोग्रामिंग में रिकर्सन क्या है (What is Recursion in C in Hindi) ?

रिकर्सन एक प्रोग्रामिंग तकनीक है जो प्रोग्रामर को खुद के आपरेशन व्यक्त करने की सुविधा प्रदान करता है । सी प्रोग्रामिंग में, यह एक फंक्शन का रूप लेता है जो स्वंय को कॉल करता है ।

रिकर्सन वह प्रक्रिया है जिसमें कोई फंक्शन स्वयं को n-नंबर तक कॉल करता है इसका मतलब है कि जहां निर्देशों में से एक प्रक्रिया को दोहराता है। यदि कोई प्रोग्राम यूजर को उसी फंक्शन के अन्दर किसी फंक्शन को पुनरावर्ती रूप से कॉल करने की संविधा प्रदान करता है, तो इस प्रक्रिया को फंक्शन का रिकर्सन कॉल कहा जाता है ।

रिकर्सन कुछ मायनों में लूप के समान है क्योंकि इसका इस्तेमाल करके समान कोड को दोहराया जाता है ।

सी प्रोग्रामिंग में रिकर्सन कितने प्रकार है (Types of Recursion in C) ?

  • Direct Recursion
  • Indirect Recursion
  • Tail Recursion
  • No Tail / Head Recursion
  • Linear Recursion
  • Tree Recursion

Direct Recursion

जब कोई फंक्शन खुद को एक ही फंक्शन में बार बार कॉल करता है, तो इसे प्रत्येक्ष रिकर्सन (direct recursion) कहा जाता है ।

Indirect Recursion

जब किसी फंक्शन को किसी अन्य फंक्शन द्वारा गोलाकार तरीके से पारस्परिक रूप से कॉल किया जात है, तो इस फंक्शन को अप्रत्यक्ष रिकर्सन (indirect recursion) कहा जाता है ।

Tail Recursion

एक रिकर्सन फंक्शन को टेल रिकर्सन कहा जाता है यदि फंक्शन स्वयं रिकर्सन कॉलिंग करता है, और वह रिकर्सन कॉल फंक्शन द्वारा निष्पादित अंतिम स्टेटमेंट है । उसके बाद, रिकर्सिव फंक्शन को कॉल करने के लिए कोई फंक्शन या स्टेटमेंट नहीं बचा होता है ।

No Tail/ Head Recursion

एक फंक्शन को नॉन टेल या हेड रिकर्सिव कहा जाता है यदि कोई फंक्शन स्वयं एक रिकर्सिव कॉल करता है, तो रिकर्सिव कॉल फंक्शन में पहला स्टेटमेंट होगा । इसका मतलब है कि रिकर्सिव कॉल से पहले कोई स्टेटमेंट या ऑपरेशन नहीं होना चाहिए ।

Linear Recursion

एक फंक्शन को लीनियर रिकर्सिव कहा जाता है यदि फंक्शन हर बार फंक्शन के चलने पर स्वयं को एक कॉल करता है और समस्या के आकार के अनुपात में रैखिक रूप से बढ़ता है ।

Tree Recursion

एक फंक्शन को टी रिकर्सन कहा जाता है, जिसमें फंक्शन रिकर्सन फंक्शन के भीतर स्वयं को एक से अधिक कॉल करता है ।

रिकर्सन का उपयोग क्यों करते है (Why we use Recursion) ?

रिकर्सन को उन समस्याओं को हल करने के लिए उपयोग किया जात है जिन्हें छोटी, दोहराव वाली समस्यओं में तोड़ा जा सकता है । यह उन चीजों पर काम करने के लिए विशेष रूप से अच्छा है जिनकी कई संभावित शाखाएं हैं और एक रिकर्सन दृष्टिकोण के लिए बहुत जटिल हैं ।

इसक एक अच्छा उदाहरण फाइल सिस्टम के माध्यम से खोज सकते हैं । आप रूट फोल्डर से शुरू कर सकते हैं, और फिर आप उस एक के भीतर सभी फाइलों और फोल्डरों के माध्यम से खोज सकते हैं । उसके बाद, आप प्रत्येक फोल्उर में प्रवेश करेंगे और उसके अंदर प्रत्येक फोल्डर के माध्यम से खोज करेंगे ।

रिकर्सन को इस्तेमाल करने का क्या लाभ है (Advantages of Recursion in C) ?

  • रिकर्सन प्रोग्राम को सुरूचिपूर्ण बनाता है ।
  • रिकर्सन प्रोग्राम कोड में स्पष्टता जोड़ता है और कोड लिखने को समय भी कम करता है ।
  • ज्तमम स्कचर के आधार पर समस्याओं को हल करने के लिए रिकर्सन सर्वोत्तम है ।
  • रिकर्सन समय की जटिलता को कम करता है ।
  • यह डेटा संरचना की समस्या को हल करने में बहुत उपयोगी है ।
  • यह फंक्शन की अनावश्यक कॉलिंग को कम करता है ।

रिकर्सन कैसे काम करता है (How recursion works in C ) ?

रिकर्सन का उपयोग करके कैसे किसी समस्या को हल किया जाता है (How a particular problem is solved using Recursion ?

किसी समस्या को रिकर्सन के आधार से हल करने के लिए, दो शर्तों को पूरा करना जरूरी होता है । सबसे पहले, समस्या को रिकर्सन रूप में लिखा जाना चाहिए, और इसके बाद में समस्या स्टेमेन्ट में एक रोक स्थिति शामिल होनी चाहिए ।

निर्ष्कष – Conclusion

FAQ’s

Q1 :

Ans:

अन्य पोस्ट पढ़े :-

अगर आपको यह पोस्ट अच्छा लगा तो इसे अपने दोस्तों के साथ शेयर करे ताकी उन्हें भी इस बारे में जानकारी प्राप्त हो सके ।

Satyajit Nath
Satyajit Nathhttps://tazahindi.com
इस पोस्ट के लेखक सत्यजीत है, वह इस वेबसाइट का Founder भी हैं । उन्होंने Information Technology में स्नातक और Computer Application में मास्टर डिग्री प्राप्त की हैं ।

LEAVE A REPLY

Please enter your comment!
Please enter your name here