去除重复数组两种思想

第一种思想:将重复的那个数字替换掉

<script>
    var arr=[2,2,3,3,4,4,5,5,6,6]
    function norepeat(arr) {
        for (var i=0;i<arr.length;i++){
            for(var j=i+1;j<arr.length;j++){
                if (arr[i]==arr[j]){
                    arr.splice(j,1)
                }
            }
        }
        return arr
    }
    console.log(norepeat(arr))

</script>

第二种思想:当下两个值不相等时:设置一个空数组,将不重复的数组存入空数组:

 var arr=[1,18,2,3,23,4,4,5,5,6]
    var brr=[];
    function norepeat(arr) {
        for (var i=0;i<=arr.length;i++){
            if (arr[i]!=arr[i+1]){
                brr.push(arr[i])
            }
        }
        return brr
    }
    console.log(norepeat(arr))

原文地址:https://www.cnblogs.com/hy96/p/11380112.html

时间: 2025-01-11 07:23:14

去除重复数组两种思想的相关文章

js去除重复字符串两种实现方法

方法一: 复制代码 代码如下: function checkRe(checkid) { var id = window.parent.getQry("ctrid") + "_"; var values = window.parent.opener.document.getElementById(id + "txt_dept_name").value; var keys = window.parent.opener.document.getElem

OC中动态创建可变数组的问题.有一个数组,数组中有13个元素,先将该数组进行分组,每3个元素为一组,分为若干组,最后用一个数组统一管理这些分组.(要动态创建数组).两种方法

<span style="font-size:24px;">//////第一种方法 // NSMutableArray *arr = [NSMutableArray array]; // for (int i = 0; i < 13; i ++) { // [arr addObject:[NSString stringWithFormat:@"lanou%d",i + 1]]; // } // NSLog(@"%@",arr);

在Word中去除超链接的两种方法

本文来自e良师益友网 不少朋友都有这样一个疑问:在Word中输入网站地址,回车之后,先前输入的地址就自动转变为了蓝色的超链接,如果我们不想这样,该如何设置呢?下面,简单的介绍两种方法给大家参考. 方法一:运用自动更正选项 1.启动Word2003,在空白处直接输入网站地址之后,自动变为蓝色的超链接形式,我们仔细发现,首字母下有一道横线,光标移动至此,显示自动更正选项. 2.单击自动更正选项,有三个可供选择的,选择控制自动更正选项. 3.在键入时自动套用格式选项卡中,取消勾选Internet及网络

矩阵或多维数组两种常用实现方法 - python

在python中,实现多维数组或矩阵,有两种常用方法: 内置列表方法和numpy 科学计算包方法. 下面以创建10*10矩阵或多维数组为例,并初始化为0,程序如下: # Method 1: list arr1 = [[0]*10 for i in range(10)] arr1[0][0] = 1 print "Method 1:\n", arr1 arr2 = [[0 for i in range(10)] for i in range(10)] arr2[0][0] = 1 pri

归并排序,树状数组 两种方法求逆序对

我们知道,求逆序对最典型的方法就是树状数组,可是另一种方法就是Merge_sort(),即归并排序. 实际上归并排序的交换次数就是这个数组的逆序对个数,为什么呢? 我们能够这样考虑: 归并排序是将数列a[l,h]分成两半a[l,mid]和a[mid+1,h]分别进行归并排序,然后再将这两半合并起来. 在合并的过程中(设l<=i<=mid,mid+1<=j<=h).当a[i]<=a[j]时.并不产生逆序数:当a[i]>a[j]时.在 前半部分中比a[i]大的数都比a[j]

OC动态创建的问题变量数组.有数组,在阵列13要素,第一个数据包阵列,每3元素为一组,分成若干组,这些数据包的统一管理。最后,一个数组.(要动态地创建一个数组).两种方法

<span style="font-size:24px;">//////第一种方法 //        NSMutableArray *arr = [NSMutableArray array]; //        for (int i = 0; i < 13; i ++) { //            [arr addObject:[NSString stringWithFormat:@"lanou%d",i + 1]]; //        

数组 两种初始化方式及二维数组

数组: 静态数组  和  动态数组 1.写法: 定义:用来存储一组相同数据类型的元素 * * * * *   数组中存储的元素必须是相同的数据类型 数组的声明  初始化 Int[] a={1,2,3,4}; 数组的初始化: 静态初始化: //方式1 int[] a={'a',2,3,34,3,4,5,6,7,8,7,8,9,0,4,5,6,7,8};//声明的同时初始化 double[] a1={1.2f}; //方式2 int b[]={1,2,3,4}; //方式3: int[] c;  

string [] 去除重复字符两个方法

不废话直接看图 结果 代码: this.txtListHTML.Text = String.Join(",", list.Replace("\r\n", ",").Split(',').Distinct()).Replace(",", "\r\n");

最小生成树的两种算法:Prim和Kruskal算法

越来越明白了一个道理:你写不出代码的原因只有一个,那就是你没有彻底理解这个算法的思想!! 以前写过最小生成树,但是,水了几道题后,过了一段时间,就会忘却,一点也写不出来了.也许原因只有一个,那就是我没有彻底理解这两种算法. 主题: 其实,求最小生成树有两个要点,一个是权值最小,还有一个就是这个图必须是树.而Prim和Kruskal的不同之处在于两者选择的变量不同,Prim选择的是始终保持权值最小,然后逐个加点构建一棵树.而Kruskal则是始终保证是一棵树(虽然构建过程中不一定是真正的树,但并查