1. 程式人生 > >js中 的排序方法

js中 的排序方法

氣泡排序
思想:陣列中相鄰元素兩兩比較,如果第一個元素大於第二個元素,交換位置,第一輪比較結束,能確定一個最大值,然後進行第二類比較。
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));