zoukankan      html  css  js  c++  java
  • 【总结】数组去重的3种方式

    数组去重的3种方式

    var arr =[1,4,2,3,4,5,6,7,3,4,5,23,2,3,4,5,3,2,3,4,5];
     
    function findInArray(n,arr){
    for(var i=0; i<arr.length; i++){
    if(arr[i]==n){
    returntrue;
    }
    }
    returnfalse;
    }
     
    function removeRep1(arr){//方法1
    var arr1 =[];
    for(var i=0; i<arr.length; i++){
    if(!findInArray(arr[i],arr1)){
    arr1.push(arr[i]);
    }
    }
    return arr1;
    }
     
    function removeRep2(arr){//方法2,先排序,然后将前后相同的元素删除一个,再i--
    arr.sort();
    for(var i=0; i<arr.length; i++){
    if(arr[i]==arr[i+1]){
    arr.splice(i,1);
    i--;
    }
    }
    return arr;
    }
     
    function removeRep3(arr){//方法3,运用json里面键不能重复的特性
    var json ={};
    var arr3 =[];
    for(var i=0; i<arr.length; i++){
    json[arr[i]]='hello';//json中的每个键就是数组中的值,值都写hello也没关系,可以重复,而json中的键是不能重复的,如果遇到一样的键,会把前面相同的键以及对应的值都覆盖
    }
    for(var name in json){
    arr3.push(Number(name));
    }
    console.log(arr3);
    }
    removeRep3(arr);
  • 相关阅读:
    CodeForces
    HihoCoder
    HihoCoder
    CodeForces
    CodeForces
    CodeForces
    HihoCoder
    HihoCoder
    CodeForces
    HihoCoder
  • 原文地址:https://www.cnblogs.com/bluefantasy728/p/5661882.html
Copyright © 2011-2022 走看看