एल्गोरिदम
एक एल्गोरिदम निर्देशों का एक परिमित समुच्चय है, जिसका पालन करने पर, एक विशेष कार्य पूरा होता है। यह भाषा विशिष्ट नहीं है, हम निर्देशों को दर्शाने के लिए किसी भी भाषा और प्रतीकों का उपयोग कर सकते हैं।
एल्गोरिदम के मानदंड
- इनपुट: एल्गोरिदम को शून्य या अधिक इनपुट बाहरी रूप से प्रदान किए जाते हैं।
- आउटपुट: एल्गोरिदम द्वारा कम से कम एक आउटपुट उत्पन्न किया जाता है।
- निश्चितता: प्रत्येक निर्देश स्पष्ट और असंदिग्ध है।
- परिमितता: एक एल्गोरिदम में, सभी विभिन्न मामलों के लिए परिमित संख्या में चरणों के बाद समाप्त हो जाएगा।
- प्रभावशीलता: प्रत्येक निर्देश बहुत बुनियादी होना चाहिए, ताकि उन निर्देशों का उद्देश्य हमारे लिए बहुत स्पष्ट हो।
एल्गोरिदम का विश्लेषण
एल्गोरिदम विश्लेषण कम्प्यूटेशनल कॉम्प्लेक्सिटी का एक महत्वपूर्ण हिस्सा है। कॉम्प्लेक्सिटी थ्योरी किसी कम्प्यूटेशनल कार्य को हल करने के लिए एल्गोरिदम द्वारा आवश्यक संसाधनों के लिए सैद्धांतिक अनुमान प्रदान करती है। एल्गोरिदम का विश्लेषण, समय और आकार के संदर्भ में (कार्यान्वयन के दौरान स्टोरेज के लिए मेमोरी का आकार) समस्या-समाधान क्षमता का विश्लेषण करने की प्रक्रिया है। हालांकि, एल्गोरिदम विश्लेषण की मुख्य चिंता आवश्यक समय या प्रदर्शन है।
एल्गोरिदम की जटिलताएं
एक एल्गोरिदम की जटिलता आकार (n) के इनपुट के लिए एक एल्गोरिदम द्वारा आवश्यक समय और स्थान की मात्रा की गणना करती है। एक एल्गोरिदम की जटिलता को दो प्रकारों में विभाजित किया जा सकता है। टाइम कॉम्प्लेक्सिटी और स्पेस कॉम्प्लेक्सिटी।
एल्गोरिदम की टाइम कॉम्प्लेक्सिटी
टाइम कॉम्प्लेक्सिटी को उस एल्गोरिदम के निष्पादन के लिए आवश्यक कुल समय के लिए एक फॉर्मूला निर्धारित करने की प्रक्रिया के रूप में परिभाषित किया गया है। यह गणना कार्यान्वयन और प्रोग्रामिंग भाषा से पूरी तरह से स्वतंत्र है।
एल्गोरिदम की स्पेस कॉम्प्लेक्सिटी
स्पेस कॉम्प्लेक्सिटी को एल्गोरिदम के सफल निष्पादन के लिए कितनी मेमोरी स्पेस आवश्यक है, इसके पूर्वानुमान के लिए एक फॉर्मूला परिभाषित करने की प्रक्रिया के रूप में परिभाषित किया गया है। मेमोरी स्पेस को आमतौर पर प्राइमरी मेमोरी माना जाता है।