الفرز السريع

يختار قيمة واحدة تُسمّى المحور، وينقل القيم الأصغر إلى يسارها والأكبر إلى يمينها. ثم يكرر الشيء نفسه مع كل جانب.

  • الأفضل Ω(n log n)
  • المتوسط Θ(n log n)
  • الأسوأ O(n²)
  • الذاكرة O(log n)
  • غير مستقر
  • بلا ذاكرة إضافية
ماذا تعني هذه المصطلحات؟
  • الأفضل: كيف يزداد الوقت مع حجم القائمة n عندما تكون المدخلات هي الأسهل لهذه الخوارزمية.
  • المتوسط: النمو المعتاد للوقت مع n. في n² إذا تضاعف عدد القيم صار الوقت نحو أربعة أضعاف، أما n log n فينمو أبطأ بكثير.
  • الأسوأ: نمو الوقت مع أصعب المدخلات. مفيد عندما يجب ألا تنخفض السرعة أبدًا.
  • الذاكرة: كم يحتاج من ذاكرة إضافية غير القائمة. 1 يعني بضعة متغيرات، و n يعني نسخة من القائمة.
  • مستقر: تحافظ القيمتان المتساويتان على ترتيبهما الأصلي. يهم هذا عند الفرز حسب حقل واحد من السجل.
  • بلا ذاكرة إضافية: يرتّب داخل القائمة نفسها، دون قائمة ثانية.
  • قيد المقارنة
  • قيد النقل
  • المحور
  • في مكانه النهائي
0 / 187 خطوة
المقارنات التبديلات

اضغط تشغيل: تُظهر الخطوط كيف تزداد الكلفة أثناء الفرز

اضغط تشغيل أو تقدّم في الخوارزمية خطوة بخطوة.

مفتاح المسافة: تشغيل أو إيقاف مؤقت. السهمان الأيسر والأيمن: خطوة بخطوة. Home وEnd: الانتقال المباشر.

جرّب هذا: اختر قائمة معكوسة. المحور دائمًا أصغر أو أكبر قيمة متبقية، فيبقى أحد الجانبين فارغًا في كل تقسيم وترتفع الكلفة نحو n².

كيف يعمل

المحور هنا هو آخر قيمة في النطاق. من اليسار إلى اليمين، تُبدَّل كل قيمة ليست أكبر من المحور إلى الجانب الأيسر. ثم يوضع المحور بين الجانبين، ويبقى هناك نهائيًا. بعدها يُرتَّب كل جانب بالطريقة نفسها.

متى يكون خيارًا جيدًا

من أسرع طرق الفرز عمليًا، ولا يحتاج تقريبًا إلى ذاكرة إضافية. لكنه يصبح بطيئًا إذا ظل يختار محورًا سيئًا، مثلًا مع قائمة مرتّبة أصلًا. لذلك تختار النسخ الحقيقية المحور بعناية أكبر.

© 2026 Developer Toolbox. جميع الحقوق محفوظة. حول