【面接編】JSの一般的な並べ替えアルゴリズム
1231 ワード
泡の並べ替え:隣の2つのデータの大きさを比較すると、前の数字が後の数より大きい場合、2つの位置を交換します.二回の長所:簡単 欠点:時間の複雑さが高く、運行効率が低下しています. 長所:快速常用 欠点:2つの配列を追加的に説明する必要があり、メモリ空間資源を浪費しました.
for
巡回巡回が必要です.function sortArr(arr){
var temp;
for(var i=0;i arr[j]){
times++;
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
console.log(" "+(++times)+" :"+arr);
}
}
return arr;
}
var times = 0;
sortArr([2,5,4,1,7,3,8,6,9,0]);
out :[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
クイックソート:まず基準点(一般的な配列の中部)を見つけます.配列は2つの部分に分けられています.順次基準点データと比較して、それより小さいものを左に置いて、それより大きいものを右に置いて、左右はそれぞれ1つの空行列で比較したデータを保存します.最後に上記の操作を実行して、配列の長さを知ることができます.var times = 0;
var quickSort = function(arr){
if(arr.length<=1){//
return arr;
}
var midIndex = Math.floor(arr.length/2);//
var midIndexVal = arr.splice(midIndex,1);//
var left = [];
var right = [];
for(var i=0;i