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