JavaScript 找出数组中重复的元素

实现检测数组重复元素的功能,需要注意一点的是,多个(2个或2个以上)重复元素,我们只需要挑出一个来就可以了。

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title>文字循环显示</title>
        <script type="text/javascript">
            var sear=function(arr)
            {
                var arr1=[];
                var flag=0;
                for(var i=0;i<arr.length;i++)
                {
                    for(var j=i+1;j<arr.length;j++)
                    {
                        if(arr[i]==arr[j])
                            {
                                flag++;
                                if(flag==1)        //判断是不是第一次重复
                                    {arr1.push(arr[i]);}
                                arr.splice(j,1);    //如果不是第一次重复,那么删除多余的重复元素
                            }
                    }
                    flag=0;        //标记清零
                }
                return arr1;
            }
            console.log(sear([1, 3,2, 2, 3,,1,1,11,1, 4, 2, 2]).sort());
            //sear([1,2,3,4],1);
        </script>
        <style type="text/css">
            p input{
                display:block;
                margin:0 auto;
                margin-top:100px;
                width:300px;
                height:50px;
                font-size:20px;
                border:2px solid #666;
                border-radius:5px;
                box-shadow:0px 0px 10px #0000FF;}
        </style>
    </head>
    <body>

    </body>
</html>

截图结果:

时间: 2024-12-29 12:48:50

JavaScript 找出数组中重复的元素的相关文章

442. 找出数组中重复的元素 Find All Duplicates in an ArrayGiven an array of integers

Given an array of integers, 1 ≤ a[i] ≤ n (n = size of array), some elements appear twice and others appear once. Find all the elements that appear twice in this array. Could you do it without extra space and in O(n) runtime? Example: Input: [4,3,2,7,

9.11排序与查找(三)——给定一个排序后的数组,包含n个整数,但这个数组已被旋转过多次,找出数组中的某个元素

/** * 功能:给定一个排序后的数组,包含n个整数,但这个数组已被旋转过多次,次数不详.找出数组中的某个元素. * 可以假定数组元素原先是按从小到大的顺序排列的. */ /** * 思路:数组被旋转过了,则寻找拐点. * @param a * @param left * @param right * @param x:要搜索的元素 * @return */ public static int search(int[] a,int left,int right,int x){ int mid=(

C# 找出数组中重复次数最多的数值

给定一个int数组,里面存在重复的数值,如何找到重复次数最多的数值呢? 这是在某社区上有人提出的问题,我想到的解决方法是分组. 1.先对数组中的所有元素进行分组,那么,重复的数值肯定会被放到一组中: 2.将分组进行排序,排序条件是分组中的元素个数: 3.元素数量最多的那个分组中的数值就是重复次数最多的. 基于以上思路,可以写出以下代码: // 示例数组,90重复4次,1重复2次,3重复3次 int[] arr = { 1, 1, 3, 3, 3, 7, 50, 15, 15, 90, 90, 9

找出数组中重复的数字(c语言)

让人瑟瑟发抖的面试题... 来我们看一下题目在一个 长度为n的数组里的所有数字都在0~n-的范围内.数组中某些数字是重复的,但不知道有几个数字重复伦理,也不知道每个数字重复了多少次,找出任意一个重复的数字注意:时间复杂度O(n),空间复杂度O(1) 怎么解决勒???分析:利用题目中0~n-1范围,可以运用数组下标和数组内容进行比较if (arr[i] != arr[arr[i]]),如果不相等时,进行调换,相等时,直接返回值来看看代码 #include<stdio.h> #define SIZ

写一个查找算法找出数组中相同的元素

1 import java.util.ArrayList; 2 3 public class Test { 4 5 // 原始数据data.假设data数组中的数据元素已经按照某种顺序排好. 6 // 但是,该数组中的数据元素重复出现. 7 // 我们的目的是查找.解析data数组中重复出现的某元素. 8 // 比如,在这个data数组中,元素'C'在数组位置2,3重复出现两次. 9 // 注意!有些元素没有重复出现,比如元素'B'. 10 private String[] data = { "

Java实现找出数组中重复次数最多的元素以及个数

/**数组中元素重复最多的数 * @param array * @author shaobn * @param array */ public static void getMethod_4(int[] array){ Map<Integer, Integer> map = new HashMap<>(); int count = 0; int count_2 = 0; int temp = 0; for(int i=0;i<array.length;i=i+count){

javascript找出数组中的最大值

代码: Array.prototype.max = function(){ var max = 0 for(var i=0;i<this.length;i++){ if(max<this[i]){ max = this[i] } } return max } 测试: var arr = [1,2,5,3,2,4] console.log(arr.max()) 输出: 5 原文地址:http://blog.51cto.com/12173069/2092766

1142: 零起点学算法49——找出数组中最大元素的位置(下标值)

1142: 零起点学算法49--找出数组中最大元素的位置(下标值) Time Limit: 1 Sec  Memory Limit: 64 MB   64bit IO Format: %lldSubmitted: 1937  Accepted: 977[Submit][Status][Web Board] Description 找出数组中最大的元素的下标. Input 多组测试,每组先输入一个不大于10的整数n 然后是n个整数 Output 输出这n个整数中最大的元素及下标值 Sample I

消除一个数组中重复的元素

使用JavaScript消除一个数组中重复的元素 var arr1 = [1,1,2,3,4,5,6,6,6,7],arr2 = []; for(var i=0;i<arr1.length;i++){ if(arr2.indexof(arr1[i] < 0){ arr2.push(arr1[i]); } } document.write(arr2); //1,2,3,4,5,6,7