Properties of an Algorithm
एक Algorithm को किसी भी problem को solve करने के लिए एक well-defined set of instructions (निर्देशों का समूह) माना जाता है। एक अच्छे Algorithm में ये 5 ज़रूरी विशेषताएँ (Properties) होनी चाहिए:
1. Finiteness (सीमितता)
- क्या मतलब है? Algorithm को एक limited (सीमित) number of steps (चरणों) के बाद stop (रुक जाना) हो जाना चाहिए। इसे infinite loop में नहीं फंसना चाहिए।
- सरल भाषा में: चाहे कोई भी input हो, Algorithm को अंत में अपना काम खत्म करके एक result देना चाहिए। यह हमेशा के लिए चलता नहीं रहना चाहिए।
2.Definiteness (स्पष्टता)
- क्या मतलब है? Algorithm के हर step को clearly (स्पष्ट रूप से) और unambiguously (बिना किसी संदेह के) define किया जाना चाहिए।
- सरल भाषा में: हर instruction इतना clear होना चाहिए कि उसे perform करने वाले को यह सोचने की ज़रूरत न पड़े कि "अब मुझे क्या करना है?" हर operation precise (सटीक) होना चाहिए।
3. Input (इनपुट)
- क्या मतलब है? Algorithm को zero or more (शून्य या अधिक) external quantities (बाहरी मात्राएँ) दी जानी चाहिए, जिन्हें Input कहते हैं।
- सरल भाषा में: Algorithm को अपना काम शुरू करने के लिए कुछ starting data या initial conditions चाहिए होते हैं। जैसे, अगर आप दो नंबरों को जोड़ने का Algorithm बना रहे हैं, तो वह दो नंबर Input होंगे।
4. Output (आउटपुट)
- क्या मतलब है? Algorithm को at least one (कम से कम एक) quantity (मात्रा) produce करनी चाहिए, जिसे Output कहते हैं।
- सरल भाषा में: Algorithm का main मकसद problem solve करना है। Solution के रूप में जो result मिलता है, उसे ही Output कहते हैं। बिना Output के Algorithm बनाने का कोई मतलब नहीं है।
5.Effectiveness (प्रभावशीलता)
- क्या मतलब है? Algorithm के हर operation को fundamentally basic (बुनियादी तौर पर सरल) होना चाहिए ताकि उसे in principle (सिद्धांत रूप में) एक pencil और paper से भी effectively (प्रभावी ढंग से) किया जा सके।
- सरल भाषा में: Algorithm के instructions ऐसे होने चाहिए जिन्हें easily और reliably execute (लागू) किया जा सके। इसमें impossible या unspecified operations नहीं होने चाहिए।
Additional Property (एक अतिरिक्त विशेषता)
Efficiency (दक्षता)
- क्या मतलब है? एक Algorithm को efficient (दक्ष) होना चाहिए, यानी उसे minimum time (कम से कम समय) और minimum memory space (कम से कम मेमोरी स्पेस) का उपयोग करना चाहिए।
- सरल भाषा में: अगर एक ही काम को करने के लिए आपके पास दो अलग-अलग Algorithms हैं, तो आप उसे चुनेंगे जो तेज़ हो और कम resources का उपयोग करे।
Comments
Post a Comment