zoukankan      html  css  js  c++  java
  • 数组去重

    1、定义一个空数组 , 遍历原数组,判断原数组中的每一个数在空数组中是否存在,如果不存在 ,就将这个数 存入到 空数组中

    function has(arr,num){    
        for( var i = 0 ; i < arr.length ; i++ ){
            if( arr[i] == num ){
                return true; //
            }
        }
        return false;//没有
    }
    function norepeat( arr ){ //arr就是要去重的数组 (原数组)
        var newarr = [];//空数组 用来存储去重后的数据
        for( var i = 0 ; i <arr.length ; i++ ){
            //var res =  has( newarr,arr[i] );
            if( !has( newarr,arr[i] ) ){ //不存在
                newarr.push( arr[i] );
            }
        }
        return newarr;
    }
    var res = norepeat( [34,34,23,34,56,56,23] );
    alert( res );

    2、先将数组按照一定的顺序排好(升序或降序)     用数组相邻的两个数做比较,如果相邻的两个数不相等,就将前一个数存入到新数组中

    function norepeat2( arr ){
        //先将数组进行排序
        arr.sort( function(a,b){
            return a-b>0;
        } )
        var newarr = [];//存储去重后的数据
        //遍历原数组 比较相邻的两个数
        for( var i = 0 ; i < arr.length ; i++ ){
            if( arr[i] != arr[i+1] ){
                newarr.push( arr[i] );
            }
        }
        return newarr;
    }
        
    var res = norepeat2( [34,2,34,2,45,67,45,67,56,2] );
    alert( res );

     3、set数组去重

    function norepeat(arr) {
           return [...new Set(arr)];
    }
    console.log(norepeat([1,2,3,4,5,2,3,4,2]))
  • 相关阅读:
    “学霸系统”app——NABC
    Scrum Meeting NO.1
    团队成员角色
    团队作业 #2
    团队作业 #1
    Qt, 我回来了。。。
    boost: tcp client sample
    makefile 中定义宏位置需要注意一下
    libpcap报文解析: ipv4、ipv6 @ 2014.7.2
    编程网站收集
  • 原文地址:https://www.cnblogs.com/mortalway/p/12016376.html
Copyright © 2011-2022 走看看