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

الدرس العشرون: مقارنة عملية بين أنواع الفرز O(N²)

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

20. مقارنة عملية بين أنواع الفرز O(N²)

على الرغم من أن Bubble و Selection و Insertion Sort تشترك جميعها في التعقيد الزمني لأسوأ حالة O(N²)، إلا أن خصائص أدائها تختلف من الناحية العملية.

الخوارزميةأسوأ وقتأفضل وقتالتبديلات/الإزاحاتالاستقرار (Stability)
Bubble SortO(N²)O(N)العديد من التبديلات/الإزاحاتمستقرة (Stable)
Selection SortO(N²)O(N²)الحد الأدنى من التبديلاتغير مستقرة (Unstable)
Insertion SortO(N²)O(N)العديد من الإزاحات، القليل من التبديلاتمستقرة (Stable)
  • الاستقرار (Stability): يكون الفرز مستقراً إذا حافظ على الترتيب النسبي للعناصر المتساوية.
  • متى تستخدم Insertion Sort: إنها الأكثر عملية بين أنواع فرز O(N²) لأن أداءها في أفضل حالة O(N) يجعلها سريعة جداً للمصفوفات المفرزة إلى حد كبير بالفعل.
  • متى تتجنب استخدامها: بالنسبة لمجموعات البيانات الكبيرة وغير المفرزة تماماً، يجب أن ننتقل إلى خوارزميات O(N log N) الأكثر تقدماً.