整理數組去重與數組排序等方法


實用且比較簡單的數組排序與數組去重的方法,也較好理解;

1、數組冒泡排序:

var arr=["a",3,5,2,1,4,2,3,3,3,5,5,5,4];

function sort(arr){
    //讓數組中的元素倆倆進行比較,實現替換;
    for (var i = 0; i< arr.length; i++) { 
        for (var j = 0; j < arr.length; j++) { 
            if (arr[j] > arr[j + 1]) {
                 var temp = arr[j];
                  arr[j] = arr[j + 1];
                   arr[j + 1] = temp; 
                } 
            }
         }
         return arr;
}
console.log(sort(arr));

  2、數組去重:最簡單的去重方法;

先創建一個新的數組來存儲數據,利用es5中的indexOf方法在新的數組中尋找重復項,如果沒有就添加到新的數組中,

var arr=["a",3,5,2,1,4,2,3,3,3,"a",5,5,5,4];
var arr1=[];
for(var i=0;i<arr.length;i++){
    if(arr1.indexOf(arr[i])==-1) arr1.push(arr[i]);
}
console.log(arr1);

 這倆個方法比較簡單,第一個還可以在做優化,代碼如下:

var arr=["a",3,5,2,1,4,2,3,3,3,5,5,5,4];

function sort(arr){
    //讓數組中的元素倆倆進行比較,實現替換;
    for (var i = 0; i< arr.length-1; i++) { 
        for (var j = 0; j < arr.length-1-i; j++) { 
            if (arr[j] > arr[j + 1]) {
                 var temp = arr[j];
                  arr[j] = arr[j + 1];
                   arr[j + 1] = temp; 
                } 
            }
         }
         return arr;
}
console.log(sort(arr));

  這樣優化使循環次數減少一半


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM