數組排序

今天總結一下常用的四種數組排序方法:

1.使用sort()對數組排序:

var arr=[11,45,2,32,89,0];
        arr.sort(function(a,b){
            return a-b;
        })

        document.write(arr);

sort方法中的參數是一個函數,function的參數(a,b),如果函數的返回值是return a-b;則表示升序。如果函數的返回值是return b-a,則表示數組按降序排列。

2. reverse()逆序

var arr=[11,45,2,32,89,0];

arr.reverse(arr);

document.write(arr);

數組排序

3.冒泡排序:

概念:數組中相鄰元素兩兩比較,如果第一個元素大於第二元素,交換第一個元素和第二個元素的位置,第一輪比較結束,能確定一個最大值,然後進行第二輪...

數組排序

        var arr=[11,45,2,32,89,0];
        for(var i=1;i<arr.length;i++){     //第一輪循環表示循環的輪數
                for(var j=0;j<arr.length-i;j++){  //這輪的for循環指的是每次循環的次數
                    if(arr[j]>arr[j+1]){
                        var temp=arr[j];
                        arr[j]=arr[j+1];
                        arr[j+1]=temp;
                    }
                }
             }

            document.write(arr);

4.選擇排序

概念:
1.先假定數組中的第一個元素爲最小值,對應的索引爲minIndex,讓該值與剩餘元素比較,如果有比該值小的,改變minIndex的指向,讓其指向較小的值的索引,讓minIndex對應的值和剩下的值進行比較
2.第一輪比較完成之後,我們能確定最小值對應的minIndex,然後讓其與第一個元素進行交換
3.假定數組中的第二個元素爲最小值,以此類推...
數組排序

var arr=[11,45,2,32,89,0];
             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;
             }

            document.write(arr);
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章