「クイックソート」のアイデアは非常にシンプルであり、ソートプロセス全体には3つのステップしか必要ありません。
(1)データセットでベンチマークを見つけます
(2)左右の配列をそれぞれ保存する2つの配列を作成します
(3)再帰を使用して、次の比較を行います
デモを見てください:http://jsdo.it/norahiko/oxiy/fullscreen(Webページは開くのが遅い場合があります。ゆっくり待ってください)
<script type = "text/javascript"> function quicksort(arr){if(arr.length <= 1){return arr; // arrayに1つの数だけがある場合、直接返されます。 } var num = math.floor(arr.length/2); //中間数のインデックス値をFindEx。フローティングポイント番号の場合、var numvalue = arr.splice(num、1); // findex中間数の値var left = []; var right = []; for(var i = 0; i <arr.length; i ++){if(arr [i] <numvalue){left.push(arr [i]); //基準点の左側の数値は左配列に渡されます} else {aph.push(arr [i]); Quicksort(左).concat([numvalue]、Quicksort(右)); //再帰的に繰り返し比較}アラート([32,45,37,16,2,87]); // pop "2,16,32,37,45,87" </script