1. مفهوم الخوارزمية.
يعد الفرز السريع تحسينًا لفرز الفقاعات. اقترحه CAR Hoare في عام 1962.
2. التفكير الخوارزمي.
قم بتقسيم البيانات المراد فرزها إلى جزأين مستقلين من خلال الفرز بمسار واحد، وتكون جميع البيانات في جزء واحد أصغر من جميع البيانات الموجودة في الجزء الآخر، ثم استخدم هذه الطريقة لفرز جزأين البيانات بسرعة على التوالي يمكن أن تتم عملية الفرز بشكل متكرر، بحيث تصبح البيانات بأكملها تسلسلًا مرتبًا.
3. تنفيذ الأفكار.
① استخدم الكلمة الرئيسية الأولى K 1 ككلمة تحكم، وقسم [K 1 ,K 2 ,…,K n ] إلى منطقتين فرعيتين، بحيث تكون جميع الكلمات الرئيسية في المنطقة اليسرى أقل من أو تساوي K 1 وجميع الكلمات الرئيسية في المنطقة اليمنى أكبر من أو يساوي K 1، وأخيراً تقع كلمة التحكم في الموضع المناسب بين المنطقتين الفرعيتين. البيانات الموجودة في المنطقة الفرعية لا تزال في حالة غير مرتبة.
② تعامل مع المنطقة اليسرى ككل وعالجها بالخطوات المذكورة في ①، وقم بإجراء نفس المعالجة على المنطقة اليمنى. (أي العودية)
③ كرر الخطوات ① و② حتى تتم معالجة المنطقة اليسرى.
public static void QuickSortByMid(int[] a, int low, int High) { if (منخفض >= مرتفع) return // Split int المحور = a[low]; // القيمة الأساسية int i = low, j = High; while (i < j) { while (i < j && a[j] >= المحور) --j; +i; a[j]=a[i]; } a[i]=pivot;رسم تخطيطي لخوارزمية الفرز السريع:
ما ورد أعلاه هو المحتوى الكامل لهذه المقالة وآمل أن يكون من المفيد للجميع تعلم خوارزمية الفرز السريع في Java.