整理数组去重与数组排序等方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了整理数组去重与数组排序等方法相关的知识,希望对你有一定的参考价值。

实用且比较简单的数组排序与数组去重的方法,也较好理解;

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));

  这样优化使循环次数减少一半

以上是关于整理数组去重与数组排序等方法的主要内容,如果未能解决你的问题,请参考以下文章

js数组去重与js数组求重

排序去重与离散化

排序去重与离散化

文本处理工具uniq去重与sort排序

JS 数组常见操作汇总,数组去重降维排序多数组合并实现思路整理

js数组去重算法