ما هو البحث الثنائي؟

لنفترض أن شخصًا ما لديه مجموعة كبيرة جدًا من العناصر ويرتبها بطريقة منظمة في صف طويل. يمكن لهذا الفرد أن يكتشف بسرعة مكان وجود كائن معين في الصف باستخدام بحث ثنائي. يتم إجراء هذا البحث عن طريق التحقق من العنصر الأوسط في الصف وإذا لم يكن الكائن الأوسط هو العنصر المطلوب ، وبعد ذلك يتم البحث في أحد نصفي الصف حيث يمكن أن يكون العنصر. سيعرف الشخص النصف الذي سيواصل البحث فيه لأن العناصر مرتبة بالترتيب. تتم هاتان الخطوتان مرارًا وتكرارًا ، على أنصاف أصغر وأصغر ، حتى يتم العثور على العنصر أو لم يعد هناك مكان للبحث.

في مجال علوم الكمبيوتر ، يعد البحث الثنائي إجراءً خطوة بخطوة يبحث عن موقع أو فهرس عنصر في مجموعة بيانات مرتبة بالتسلسل. يحقق ذلك من خلال مقارنة قيمة معروفة بالعنصر الأوسط المعين من المصفوفة ، وإذا لم تكن مكافئة ، فقم بشكل متكرر بتقييد مقارنة العنصر الأوسط بالنصف الأصغر ذي الصلة من المجموعة حتى يتم الحصول على التكافؤ أو استنفاد القائمة.

البحث الثنائي ، الذي يسمى أحيانًا البحث نصف الفاصل ، يكون أسرع بكثير من البحث المتسلسل الأساسي الذي يبدأ في أحد طرفي قائمة العناصر ويقارن كل عنصر على طول الطريق حتى يتم العثور على تطابق أو حتى يصل البحث إلى نهاية القائمة. إذا كان لدى الشخص 100 عنصر على التوالي وكان العنصر الأخير هو العنصر الذي يتم البحث عنه ، فسيأخذ البحث المتسلسل 100 مقارنة. ومع ذلك ، لا تتطلب طريقة التقسيم سوى سبع مقارنات على الأكثر قبل العثور على العنصر. من الواضح أنه أكثر كفاءة من البحث المتسلسل.

أكبر عيب في البحث الثنائي هو أنه يجب فرز قائمة العناصر حتى يعمل هذا البحث. فرز قائمة يستغرق وقتا. قد يستغرق الفرز ثم استخدام هذا النوع من البحث وقتًا أطول من إجراء نوع آخر من البحث في المقام الأول.

تعد القدرة على استخدام المعلومات ، خاصة من مجموعات البيانات الكبيرة جدًا ، أمرًا مهمًا لإنجاز العديد من المهام في الحياة. يتعامل تخصص علوم الكمبيوتر مع العديد من أنواع المشكلات ، بما في ذلك إيجاد طرق فعالة للبحث عن المعلومات حتى يتم الحصول على نتائج مفيدة. البحث الثنائي هو مجرد واحد من العديد من الخوارزميات المتاحة للبحث في البيانات.