बाइनरी सर्च क्या है?कंप्यूटर विज्ञान में, बाइनरी खोज, जिसे अर्ध-अंतराल खोज के रूप में भी जाना जाता है, [1] लॉगरिदमिक खोज, [2] या बाइनरी चॉप, [3] एक खोज एल्गोरिथ्म है जो एक क्रमबद्ध सरणी के भीतर लक्ष्य मान की स्थिति का पता लगाता है। [4] ][5] बाइनरी खोज लक्ष्य मान की तुलना सरणी के मध्य तत्व से करती है। यदि वे समान नहीं हैं, तो आधा जिसमें लक्ष्य झूठ नहीं बोल सकता है, समाप्त हो जाता है और शेष आधे पर खोज जारी रहती है, फिर से मध्य तत्व को लक्ष्य मान से तुलना करने के लिए ले जाता है, और इसे तब तक दोहराता है जब तक कि लक्ष्य मान नहीं मिल जाता। यदि शेष आधा खाली होने पर खोज समाप्त हो जाती है, तो लक्ष्य सरणी में नहीं है।

बाइनरी सर्च सबसे खराब स्थिति में लघुगणकीय समय में चलती है, जिससे

ओ (लॉग एन) तुलना, जहां

n सरणी में तत्वों की संख्या है। [ए] [6] छोटे सरणियों को छोड़कर बाइनरी खोज रैखिक खोज से तेज है। हालाँकि, बाइनरी खोज को लागू करने के लिए सरणी को पहले क्रमबद्ध किया जाना चाहिए। तेजी से खोज के लिए डिज़ाइन की गई विशेष डेटा संरचनाएँ हैं, जैसे हैश तालिकाएँ, जिन्हें बाइनरी खोज की तुलना में अधिक कुशलता से खोजा जा सकता है। हालाँकि, द्विआधारी खोज समस्याओं की एक विस्तृत श्रृंखला को हल कर सकती है, जैसे कि लक्ष्य के सापेक्ष सरणी में अगला-छोटा या अगला-सबसे बड़ा तत्व खोजना, भले ही वह सरणी से अनुपस्थित हो।

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