الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

ما هي خوارزمية الفرز الأسرع في حال المصفوفة مقلوبة

بدأه Noze في 7 يناير 2012 · 2 رد · 1,245 مشاهدة · في الرياضيات والخوارزميات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

اصحاب البرمجة و الخوارزميات

اتمنى ان تساعدوني بمعرفة اي خوارزمية من خوارزميات الفرز اسرع وافضل

من حيث الذاكرة والوقت

في حالت كانت المصفوفة lمعكوسة

اي تكون المصفوفة

a[0] = 6

a[1] = 5

a[2] = 4

a[3] = 3

a[4] = 2

a[5] = 1

a[6] = 0

وفي حال الاجابة اريد ان اعرف لماذا هذه الخوارزمية هي الافضل وشكرا

تم تعديل هذه المشاركة بواسطة Noze في 7 يناير 2012 في 19:13

#2

لو كانت المصفوفة معكوسة تماماً فيمكنك بكل بساطة عمل reverse لها في Linear Time ... لتصبح مرتبة تصاعدياً

أما لو كنت متأكد انها معكوسة لحد ما .. مثلاً 9 - 8 - 2 - 7 - 6 - 5 - 4 - 1 - 3 - 0

فيمكنك عمل reverse للمصفوفة أولاً لتصبح 0 - 3 - 1 - 4 - 5 - 6 - 7 - 2 - 8 - 9

ثم عمل Insertion Sort على المصفوفة الذي يعمل بشكل جيد إذا كانت مرتبة لحد ما

بصفة عامة Randomized Quick Sort يعطي أفضل النتائج ، بالذات أنه يمكن تحسينه و عمل Optimization بشكل كبير

كأن يتم ترتيب العناصر بإستخدام Insertion Sort مثلاً عندما يكونوا أصغر من عدد معين (20 كمجرد مثال لكن يجب عليك التجربة

بنفسك للحصول على افضل النتائج)

في كل الحالات ابتعد عن ال Bubble Sort تماماً

1
#3

يعني لا استطيع ان استخدم خوارزميات الفرز اذا كانت معكوسة تمام

بدون استخدام ال Linear Time

انا اعلم ان ال Quick Sort هي الافضل ولكن في حال كانت معكوسة هل ال Quick هي الافضل ام ال Insertion sort ام خوارزميات للفرز اخرى

وشكرا

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…