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