فكرة "الفرز السريع" بسيطة للغاية ، وتتطلب عملية الفرز بأكملها ثلاث خطوات فقط:
(1) ابحث عن معيار في مجموعة البيانات
(2) قم بإنشاء صفيفتين ، وتخزين المصفوفات اليسرى واليمين على التوالي
(3) استخدم العودية لإجراء المقارنة التالية
انظر إلى العرض التوضيحي: http://jsdo.it/norahiko/oxiy/fullscreen (قد تكون صفحة الويب بطيئة في فتحها ، الانتظار ببطء)
<script type = "text/javaScript"> function QuickSort (arr) {if (arr.length <= 1) {return arr ؛ // إذا كان هناك رقم واحد فقط في الصفيف ، فسيتم إرجاعه مباشرة ؛ } var num = math.floor (arr.length/2) ؛ // findex قيمة الفهرس للرقم المتوسط. إذا كان رقمًا عائمًا ، فستدير Var NumValue = arr.splice (num ، 1) ؛ // findex قيمة الرقم المتوسط var left = [] ؛ var right = [] ؛ لـ (var i = 0 ؛ i <arr.length ؛ i ++) {if (arr [i] <numValue) {left.push (arr [i]) ؛ // يتم تمرير الرقم على يسار النقطة المرجعية إلى الصفيف الأيسر} {right.push (arr [i]) ؛ Quicksort (يسار) .concat ([numValue] ، Quicksort (يمين)) ؛ // تكرار التكرار بشكل متكرر} التنبيه ([32،45،37،16،2،87])) ؛ // pop "2،16،32،37،45،87" </script>