العودة إلى الدورة

الدرس الأربعون: البحث بعمق مقابل البحث بعرض: اختيار الاجتياز الصحيح

الخوارزميات: من الصفر إلى الاحتراف (دليل المبتدئين)

40. البحث بعمق مقابل البحث بعرض: اختيار الاجتياز الصحيح

يتمتع كل من DFS و BFS بنفس التعقيد الزمني التقاربي، O(V + E) عند استخدام قائمة تجاور (Adjacency List)، ولكنهما يحلان مشاكل مختلفة بشكل أفضل.

الميزةDFS (البحث بعمق أولاً)BFS (البحث بعرض أولاً)
هيكل البياناتمكدس (Stack) (أو العودية)قائمة انتظار (Queue)
نمط البحثعميق، يستنفد مساراً واحداً أولاًواسع، يستكشف طبقة تلو الأخرى
التعقيد الزمنيO(V + E)O(V + E)
التعقيد المكانيO(H) حيث H هو ارتفاع الرسم البيانيO(B) حيث B هو أقصى عرض/عدد العُقد في مستوى واحد
الأفضل لـاكتشاف الدورات، الفرز الطوبولوجي، استكشاف الهياكل الكبيرة والعميقة (إذا كان الهدف على الأرجح عميقاً).العثور على أقصر المسارات (غير الموزونة)، إيجاد المكونات المتصلة، الاستكشاف الضحل (إذا كان الهدف على الأرجح قريباً من البداية).