ما هو البحث الثنائي؟
Context:في علوم الكمبيوتر، البحث الثنائي، والمعروف أيضا باسم البحث نصف الفاصل، البحث اللوغاريتمي، أو البحث الثنائي، هو خوارزمية بحث تجد موقع القيمة المستهدفة داخل صفيف مرتب. البحث الثنائي يقارن القيمة المستهدفة بالعناصر الوسطى للمصفوفة. إذا لم تكن متساوية، يتم حذف النصف الذي لا يمكن أن يكمن فيه الهدف ويستمر البحث في النصف المتبقي، مرة أخرى أخذ العنصر الأوسط لمقارنة القيمة المستهدفة، وتكرار هذا حتى يتم العثور على القيمة المستهدفة. اذا انتهى البحث مع ان النصف المتبقي فارغ، فالهدف ليس في المصفوفة.  البحث الثنائي يعمل في وقت لوغاريتمي في أسوأ الحالات، مما يجعل  0 ((log n) مقارنات، حيث  n هو عدد العناصر في المصفوفة. [a] البحث الثنائي أسرع من البحث الخطي باستثناء المصفوفات الصغيرة. ومع ذلك، المصفوفة يجب أن تكون مرتبة أولاً لتطبيق البحث الثنائي. هناك هياكل بيانات متخصصة مصممة للبحث السريع، مثل جداول التجزئة، والتي يمكن البحث عنها بكفاءة أكبر من البحث الثنائي. ومع ذلك، البحث الثنائي يمكن أن يحل مجموعة أوسع من المشاكل، مثل العثور على أصغر أو أكبر عنصر في المصفوفة بالنسبة إلى الهدف حتى لو كان غائبًا من المصفوفة.  هناك العديد من الاختلافات في البحث الثنائي. على وجه الخصوص، التسلسل الكسري يسرع البحث الثنائي لنفس القيمة في صفوف متعددة. التسلسل الكسري يحل بكفاءة العديد من مشاكل البحث في الهندسة الحاسوبية والعديد من المجالات الأخرى. البحث الأسي يوسع البحث الثنائي إلى قوائم غير محدودة. شجرة البحث الثنائية وبنية بيانات شجرة B تستند للبحث الثنائي.
البحث الثنائي هو خوارزمية بحث تجد موقع القيمة المستهدفة في صفيف مرتب. يزيل النصف الذي لا يمكن ان تكمن فيه القيمة المستهدفة. يبحث عن القيمة في النصف الآخر. هذا يستمر بتكرار العنصر الأوسط لمقارنة القيمة المستهدفة حتى يتم العثور على القيمة المستهدفة. البحث الثنائي أسرع من البحث الخطي باستثناء المصفوفات الصغيرة.