كل ما تحتاج لمعرفته حول دروس وخوارزمية البحث الثنائي
نشرت: 2021-12-07عادة ما تمتلك المنظمات مجموعات بيانات كبيرة تحتوي على آلاف أو ملايين العناصر. من المستحيل عمليًا عليهم إيجاد حل معين أو نتيجة ضمن مجموعة بيانات دون تدخل الذكاء الاصطناعي. لذلك ، تشكل خوارزميات البحث مكونًا أساسيًا في الذكاء الاصطناعي. إنها تسهل على المؤسسات الاطلاع على قدر هائل من المعلومات ومعرفة ما إذا كان عنصر معين موجودًا في مجموعة بيانات وموقع بياناتها الدقيق.
يتم تصنيف خوارزميات البحث إلى فئتين رئيسيتين ، وهما البحث المتسلسل والبحث الفاصل. يُشار إلى البحث المتسلسل بالبحث الخطي ، بينما يُطلق على البحث الفاصل أيضًا البحث الثنائي. في البحث الخطي ، تنتقل الخوارزمية على التوالي من خلال كل عنصر مذكور في مجموعة البيانات حتى تعثر على العنصر المطلوب. تعد خوارزمية البحث الخطي مفيدة في البحث من خلال مجموعة بيانات غير مرتبة.
نظرًا لأن خوارزمية البحث تمر عبر كل عنصر ، فإن الأمر يستغرق وقتًا للحصول على النتائج المرجوة. لذلك ، نادرًا ما يتم استخدامه. تستخدم المنظمات في الغالب خوارزمية البحث الثنائي. دعنا نعرف المزيد عن نفس الشيء.
جدول المحتويات
ما هي خوارزمية البحث الثنائي؟
خوارزمية البحث الثنائي هي خوارزمية بحث فاصل تستخدم على نطاق واسع في مصفوفة مرتبة لتحديد موضع قيمة أو عنصر معين. المصفوفة التي تم فرزها هي مجموعة بيانات يتم فيها ترتيب العناصر بترتيب دوري أو أبجدي أو رقمي محدد.
فيما يلي مثال لمساعدتك على فهم مفهوم خوارزمية البحث الثنائي بشكل أفضل. افترض أنك بحاجة إلى البحث عن كلمة في القاموس. في هذه الحالة ، يمكنك استخدام خوارزمية البحث الثنائي لمعرفة الموضع الدقيق للكلمة لأن الكلمات الموجودة في القاموس مرتبة حسب الترتيب الأبجدي.
على العكس من ذلك ، إذا كنت ترغب في العثور على كلمة معينة في كتاب يتم ترتيب الكلمات فيه بالترتيب ، فسيتعين عليك استخدام خوارزمية البحث الخطي.
يجب ترتيب مجموعة البيانات الرقمية بطريقة تصاعدية أو تنازلية لاستخدام خوارزمية البحث الثنائي. إذا كانت مجموعة البيانات تتكون من كلمات ، فيجب أن تكون موجودة بالترتيب الأبجدي.
تطبيقات خوارزمية البحث الثنائي
تعتبر خوارزمية البحث الثنائي من أفضل خوارزميات البحث بسبب كفاءتها. فيما يلي بعض التطبيقات العملية لخوارزمية البحث الثنائي.
1. شجرة البحث
يتم استخدام خوارزمية البحث الثنائي للعثور على معلومات محددة من مجموعات البيانات الكبيرة مثل القواميس وأدلة الهاتف.
2. تصحيح البرنامج
أثناء اختبار البرنامج ، عندما تصادف خطأ في حدث معين ، يمكنك استخدام خوارزمية البحث الثنائي وإدخال نطاق للعثور على الموضع الدقيق للخطأ بدلاً من إعادة تشغيل الكود بالكامل.
3. يحفظ الذاكرة
تطبيق XA العملي لشجرة البحث الثنائية هو أنه يوفر مساحة التخزين. نظرًا لأن الخوارزمية تجد نطاقًا معقولًا ضمن مجموعة البيانات التي سيكون العنصر موجودًا ضمنها ، فإنها تحتفظ فقط بالقيم المطلوبة مع تجاهل العناصر الأخرى.
كيفية تنفيذ خوارزميات البحث الثنائي؟
خوارزميات البحث الثنائية سهلة التنفيذ. بدلاً من استعراض نتيجة البحث بالكامل ، تتحقق الخوارزمية أولاً من العنصر الأوسط ثم تتابع لمعرفة الموضع الدقيق للعنصر. هنا كيف يمكنك فهمها.
تقارن خوارزمية البحث الثنائي العنصر الأوسط في المصفوفة المرتبة للعثور على عنصر في مجموعة البيانات الرقمية. عادة ما تنشأ ثلاثة احتمالات من هذا. في الحالة الأولى ، يتطابق العنصر الأوسط مع المفتاح الذي يتم البحث عنه. الاحتمال الثاني هو أن موضع العنصر الأساسي يقع بعد العنصر الأوسط. في الحالة الأخيرة ، يتم وضع العنصر الأساسي قبل العنصر الأوسط في المصفوفة المرتبة.
إذا كانت الخوارزمية تبحث عن نفس العنصر الموجود في المنتصف ، سينتهي البحث. ومع ذلك ، في الحالتين الثانية والثالثة ، تقرر الخوارزمية ما إذا كان العنصر الأساسي أكبر أم أصغر من العنصر الأوسط. ثم يبحث خلال النصف الأول أو النصف الأخير وفقًا لذلك. إذا لم يكن العنصر موجودًا في مجموعة البيانات ، فستعرض خوارزمية البحث الثنائي نتيجة "لم يتم العثور على مجموعة البيانات".
من خلال التحقق أولاً من العنصر الأوسط ، تساعد خوارزمية البحث الثنائي على تقليل الوقت. يقوم بتخفيض منطقة البحث عن طريق تحديد ما إذا كان العنصر سيكون موجودًا في النصف الأول أم النصف الثاني.
شجرة البحث الثنائي وعملية البحث
الآن بعد أن تعرفت على خوارزمية البحث الثنائي ، دعنا نفهم مفهوم شجرة البحث الثنائية. تقوم خوارزمية البحث الثنائي بتقسيم المصفوفة المصنفة إلى أجزاء تجعل البحث أسهل وأسرع.
قبل ذلك ، يجب أن تعرف أولاً مفهوم أشجار البيانات في البرمجة. الأشجار عبارة عن هياكل هرمية تخزن البيانات في شكل عقد متصلة عبر الحواف. يمكنك اعتبارها فروع الشجرة. تسمى العقدة الأولى من الشجرة بالعقدة الأصلية ، ويشار إلى العقد الأخرى المتصلة بها بالعقد الفرعية.
في شجرة البحث الثنائية ، يكون لكل أصل عقدتان فرعيتان بحد أقصى. يتم تقسيم الأشجار إلى عنصر البيانات الأوسط ، والعقدة الفرعية اليسرى ، والعقدة الفرعية اليمنى. إنها مجموعة بيانات رقمية مصنفة تكون فيها قيمة العقدة اليسرى أقل من قيمة العنصر الأوسط. وبالمثل ، فإن قيمة العقدة اليمنى أكبر من العنصر الأوسط.
تساعد شجرة البحث الثنائية في العثور على الموضع الدقيق للعنصر المطلوب. يتم ملاحظة العنصر الأوسط أولاً. إذا كانت القيمة لا تتطابق مع العنصر المطلوب ، فستقوم الخوارزمية بالتحقق من العقدة اليسرى أو اليمنى. سيتم اعتبار العقدة اليسرى فقط إذا كانت قيمة العنصر أقل من العنصر الأوسط. ومع ذلك ، إذا كانت قيمة العنصر أكبر من العنصر الأوسط ، فسنحتاج فقط إلى المرور عبر العقدة اليمنى. سيتم التخلص من اليسار.
حدود خوارزمية البحث الثنائي
على الرغم من أن خوارزمية البحث الثنائي لها العديد من المزايا ، إلا أن هناك قيودًا معينة أيضًا.
- لتنفيذ خوارزمية البحث الثنائي ، يجب أن يكون لديك مصفوفة مرتبة. إذا لم يتم ترتيب مجموعة البيانات أبجديًا أو رقميًا ، يصبح من المستحيل تنفيذ خوارزمية البحث الثنائي.
- لا تعد خوارزميات البحث الثنائي مفيدة للمصفوفات الصغيرة غير المصنفة لأنها تتطلب الكثير من الوقت لفرز مجموعة البيانات. في مثل هذه الحالات ، تعد خوارزمية البحث الخطي خيارًا أكثر عملية.
- قد لا تخبرنا خوارزميات البحث الثنائي عن الموضع الدقيق لعنصر ما كخوارزمية بحث خطي لأنها تمر فقط من خلال جزء واحد من مجموعة البيانات.
الفرص الوظيفية بعد تعلم خوارزمية البحث الثنائي
ترتبط خوارزمية البحث الثنائي في علوم الكمبيوتر بهيكل البيانات. لذلك ، إذا كنت تسعى للحصول على درجة الماجستير في علوم الكمبيوتر في علوم البيانات ، فيمكنك تولي الأدوار المهنية التالية:
- مهندس بيانات أو مطور
- وظائف نمذجة البيانات مثل التصميم التجريبي والنمذجة المنظمة
- تحليلات البيانات مثل التعلم الآلي وأنظمة التوصية
كيف يمكنك تعلم التطبيق العملي لخوارزميات البحث الثنائي؟
معرفة خوارزميات البحث الثنائي أمر لا بد منه إذا كنت ترغب في متابعة الفرص الوظيفية في علوم الكمبيوتر. لهذا ، يجب أن تكون حاصلاً على درجة البكالوريوس في علوم الكمبيوتر بأوراق اعتماد ممتازة. تمنحك درجة الماجستير في علوم الكمبيوتر ميزة حيث تحصل على فرصة لاكتساب المزيد من المعرفة حول هذا الموضوع.
يمكن لأي شخص يبحث عن دورة ماجستير لتعلم أساسيات خوارزميات البحث الثنائي وتطبيقها العملي أن يذهب للحصول على ماجستير العلوم في دورة التعلم الآلي والذكاء الاصطناعي مُقدم من upGrad.
يتم تقديمه بالتعاون مع جامعة ليفربول جون مورس ، المصنفة من بين أفضل 50 جامعة في المملكة المتحدة. إذا كنت جديدًا في مجال البرمجة ، فإن upGrad تقدم أيضًا محتوى تحضيريًا مسبقًا للبرنامج يقدم Python وتصور البيانات وتحليل البيانات ومفاهيم أكثر أهمية.
بالإضافة إلى ذلك ، ستحصل أيضًا على فرصة للعمل في أكثر من 12 دراسة حالة ومشروعًا. يستمتع الطلاب أيضًا بالجلسات الحية مع الخبراء والموجهين ، وفرص التعلم من نظير إلى نظير ، والإرشاد الشخصي لنموهم الوظيفي.
خاتمة
تعد خوارزميات البحث الثنائية مفهوماً حاسماً في البرمجة. إذا كنت مهتمًا بعلوم البيانات والتعلم الآلي ، فمن الأفضل أن تتعلم بعمق حول خوارزميات البحث الثنائية وخوارزميات البحث الأخرى التي ستساعدك في حياتك المهنية المستقبلية. إلى جانب المعرفة النظرية ، ستحتاج أيضًا إلى معرفة عملية بهذا الموضوع.
ما هي خوارزمية البحث الثنائي؟
خوارزمية البحث الثنائي هي برنامج يستخدم في مصفوفة مرتبة لمعرفة ما إذا كان عنصر معين موجودًا في المصفوفة والموضع الدقيق للعنصر. تقوم خوارزمية البحث الثنائي بتقسيم مجموعة البيانات إلى ثلاثة أجزاء - العنصر الأوسط والجانب الأيسر والجانب الأيمن.
متى يتم استخدام خوارزمية البحث الثنائي؟
يتم استخدام خوارزمية البحث الثنائي فقط في حالة وجود مصفوفة مرتبة. إذا كانت مجموعة البيانات صغيرة جدًا أو لم يتم فرزها ، فلن يتم تنفيذ خوارزمية البحث الثنائي. في مثل هذه الحالات ، يتم تطبيق خوارزمية البحث الخطي.
كيف يمكنني دراسة خوارزمية البحث الثنائي؟
تعد خوارزميات البحث الثنائية مفهومًا مهمًا في علوم الكمبيوتر. لدراستها ، يجب أن تكون على دراية بمفاهيم بنية البيانات. أفضل طريقة لتعلم الأداء النظري والعملي لخوارزمية البحث الثنائي هو استخدامها في المشاكل العملية.