js中 的排序方法
阿新 • • 發佈:2018-12-05
氣泡排序
思想:陣列中相鄰元素兩兩比較,如果第一個元素大於第二個元素,交換位置,第一輪比較結束,能確定一個最大值,然後進行第二類比較。
var arr = [11,2,3,5,6,67];
for(var i=1; i<arr.length; i++){
for(var j=0; j<arr.length-i; j++){
if(arr[j]>arr[j+1]){
var temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
**選擇排序** 思想:假定陣列中第一個元素為最小值,對應的索引值為minIndex,讓該值和剩餘元素進行比較,改變minIndex的指向,指向小值的索引,讓minIndex對應的值和剩餘的值進行比較,第一輪結束能確定最小值對應minIndex,讓其與第一個元素的位置進行交換 var arr = [11,3,45,56,6,7] function selectSort(arr){ for(var i=0; i<arr.length-1; i++){ var minIndex = i; for(var j=i+1; j<arr.length; j++){ if(arr[minIndex] >arr[j]){ minIndex = j; } } var temp = arr[i]; arr[i] = arr[minIndex]; arr[minIndex] = temp; } return arr; } console.log(selectSort(arr));