एक एल्गोरिदम को निर्देशों के एक सीमित सेट के रूप में परिभाषित किया जाता है, जिसका पालन किया जाता है, तो एक विशेष कार्य करता है। सभी एल्गोरिदम को निम्नलिखित मानदंडों को पूरा करना चाहिए
इनपुट एक एल्गोरिथम में शून्य या अधिक इनपुट होते हैं, वस्तुओं के निर्दिष्ट सेट से लिए या एकत्र किए जाते हैं।
आउटपुट एल्गोरिथम में एक या अधिक आउटपुट होते हैं जिनका इनपुट से विशिष्ट संबंध होता है।
निश्चितता। प्रत्येक चरण को स्पष्ट रूप से परिभाषित किया जाना चाहिए; प्रत्येक निर्देश स्पष्ट और स्पष्ट होना चाहिए।
परिमितता। एल्गोरिथम को चरणों की एक सीमित संख्या के बाद हमेशा समाप्त या समाप्त होना चाहिए।
प्रभावशीलता। पूरा किए जाने वाले सभी ऑपरेशन पर्याप्त रूप से बुनियादी होने चाहिए ताकि उन्हें ठीक और सीमित लंबाई में किया जा सके।
हम एक एल्गोरिथम को कई तरह से चित्रित कर सकते हैं।
- प्राकृतिक भाषा:अंग्रेजी जैसी प्राकृतिक भाषा लागू करें
- फ्लो चार्ट:ग्राफिक प्रतिनिधित्व फ्लोचार्ट को दर्शाता है, केवल अगर एल्गोरिदम छोटा और सरल है।
- छद्म कोड:यह छद्म कोड अस्पष्टता के अधिकांश मुद्दों को छोड़ देता है; सिंटैक्स प्रोग्रामिंग भाषा के संबंध में कोई विशिष्टता नहीं है।
उदाहरण 1:किसी संख्या के भाज्य मान की गणना के लिए एल्गोरिथम
Step 1: a number n is inputted Step 2: variable final is set as 1 Step 3: final<= final * n Step 4: decrease n Step 5: verify if n is equal to 0 Step 6: if n is equal to zero, goto step 8 (break out of loop) Step 7: else goto step 3 Step 8: the result final is printed
पुनरावर्ती एल्गोरिदम
एक पुनरावर्ती एल्गोरिथ्म स्वयं को कॉल करता है जो आम तौर पर एल्गोरिथम के पैरामीटर के रूप में वापसी मान को फिर से पास करता है। यह पैरामीटर इनपुट को इंगित करता है जबकि रिटर्न वैल्यू आउटपुट को इंगित करता है।
पुनरावर्ती एल्गोरिदम को सरलीकरण की एक विधि के रूप में परिभाषित किया गया है जो समस्या को समान प्रकृति की उप-समस्याओं में विभाजित करता है। एक रिकर्सन के परिणाम को अगले रिकर्सन के इनपुट के रूप में माना जाता है। पूर्णता स्व-समान फैशन तरीके से है। एल्गोरिदम खुद को छोटे इनपुट मानों के साथ कॉल करता है और इन छोटे मूल्यों पर संचालन को पूरा करके परिणाम प्राप्त करता है। फैक्टोरियल की उत्पत्ति, फाइबोनैचि संख्या श्रृंखला को पुनरावर्ती एल्गोरिदम के उदाहरण के रूप में दर्शाया गया है।
उदाहरण:रिकर्सन का उपयोग करके फैक्टोरियल फ़ंक्शन लिखना
intfactorialA(int n) { return n * factorialA(n-1); }