المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : ما هي أفضل خوارزمية بحث؟؟؟ نقاش علمي (يعني الجواب النهائي)


Golden man
05-31-2008, 04:09 PM
ورد هالسؤال بالمذاكرة و بالامتحان العملي . و في كتير ناس لهلأ بظن ما بيعرفوا الجواب ....

الجواب و بكل بساطة أنو ما في جواب7smil.

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

تعقيد خوارزمية البحث الخطي هو n
و تعقيد خوارزمية البحث الثنائي هو لوغاريتم n

لذا للوهلة الأولى منفكر أنو البحث الثنائي هو الأفضل بس مو هون المشكلة ...و إنما إذا تعمقنا أكتر بالموضوع ....

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

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

هي هيي المعلومات يلي عندي بهالموضوع و بظن أنو هي الفكرة كافية لهيك سؤال , و إذا حدا عنده استفسار فأنا بالانتظار ...