去除数组中的重复元素的方法

1、去重

清除数组中重复出现的元素:

  var    arr1 = [ 1,3,3,4,4 , 4,"aba","aba" ];   //数组字面量的形式创建数组。

  var    arr2 = [ ];

  for ( var i=0; i<arr1.length; i++){

    if(arr2.indexOf(arr1[i])<0){          // 在数组arr2中匹配是否有arr[i]这个元素存在,有就返回这个元素在数组中的下表位置,没有匹配返回-1

      arr2.push(arr1[i]);

    }

  }

  console.log(arr2);    在控制台(f12 热键打开开发者工具)输出的结果是

  1 , 3 , 4 , "aba"

2、计算出现重复的次数

    var    arr1 = [ 1,3,3,4,4,4,"aba","aba" ];
    var    obj = {};
    for( var  i=0 ;i< arr1.length; i++){
      if( !obj[arr1[i]] ){                      //访问对象属性的方式
        obj[arr1[i]] = 1;               //设置对象属性
      }
      else{
        obj[arr1[i]]++;          
      }
    }
       for (key in obj){
        console.log(key+":"+obj[key]);    
       }

3、依据数组清除重复元素的原理,查找字符串中重复出现的字母;

  var   str = "abareevadrgr";

  var  str2 = "";                    // 存放重复的元素

  var   arr1 =str.split("");     //将字符串转换成数组。

  var   arr2 =  [ ];

  for (var i =0 ; i<arr1.length ; i++){

    if( arr2.indexOf(arr1[i])<0){

      arr2.push(arr[i]);                   //  起到一个中转战的作用,以此来排除重复元素。

    }

    else{

      if(str2.indexOf(arr1[i])<0){       //这个字母在字符串 str 中可能出现多次,所以要再判断,避免将重复的元素全部输出。

      str2+=arr1[i];

    }

   }

  }

  console.log(str2);  在控制台输出的结果是   aer

时间: 2024-11-15 09:02:46

去除数组中的重复元素的方法的相关文章

去除数组中的重复元素

方法1:开辟辅助空间 #include<vector> #include<algorithm> #include<iostream> #define LENGTH 10 using namespace std; void Unique(){ int array[LENGTH]={1,1,1,2,2,4,4,6,6,6}; int pre=array[0],cur=array[1]; int temp[LENGTH]; int k=0; int i=1;//cur和i指向

去除数组中所有重复元素

//去除数组中重复元素 var arr = [0,2,3,1,5,5,8,8,2,1,10,10,43,43]; var json = {}; for (var i = 0; i < arr.length; i++) { if (!json[arr[i]]) { json[arr[i]] = arr[i]; } }; 输出结果:0,1,2,3,5,8,10,43 //删除函数中指定的元素 //这样就构造了这样一个函数,比如我有有一个数组: var emp = ['abs','dsf','sdf'

javascript去除数组中的重复元素

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getS

javascript中去除数组中的重复元素

1 <script type="text/javascript"> 2 var arr = ["b" ,"a" , "a", 2, 3, 3, 2, 1, 4, {}]; 3 Array.prototype.unique = function(){ 4 var ret = []; 5 var o = {};//这个对象在这里其实是起一个临时容器的作用,在下面的操作中,每次从数组取一个元素,然后判断以这个元素为属性名

js去除数组中的重复值

hasOwnProperty(property) 方法 JavaScript中hasOwnProperty函数方法是返回一个布尔值,指出一个对象是否具有指定名称的属性. 使用方法: object.hasOwnProperty(proName) 其中参数object是必选项.一个对象的实例.proName是必选项.一个属性名称的字符串值. 如果 object 具有指定名称的属性,那么JavaScript中hasOwnProperty函数方法返回 true:反之则返回 false.此方法无法检查该对

第11题:移除数组中的重复元素

/* 前几天去爬泰山了,一直没更新,上山时还没什么感觉,下山后简直要崩溃啊,骨头都散了,继续更新...... */ 第11题:移除数组中的重复元素 给定一个升序排列的数组,去掉重复的数,并返回新的数组的长度. 例如: 数组A = {1, 1, 2},你的函数应该返回长度2,新数组为{1, 2} 要求: 不能新开数组分配额外的空间.即常数空间限制. 提示: 输入一个整数n,以及其对应的数组A[n],输出新数组长度 样例输入 5 0 0 1 1 2 样例输出 3 解析: #include <stdi

【LeetCode-面试算法经典-Java实现】【026-Remove Duplicates from Sorted Array(删除排序数组中的重复元素)】

[026-Remove Duplicates from Sorted Array(删除排序数组中的重复元素)] [LeetCode-面试算法经典-Java实现][所有题目目录索引] 原题 Given a sorted array, remove the duplicates in place such that each element appear only once and return the new length. Do not allocate extra space for anot

删除数组中的重复元素,并返回去重的数组

/*删除数组中的重复元素,并返回去重的数组*/ function delRepeatNum(arr){ var result = []; var middleObj = {}; var temp; for(var i = 0; i < arr.length; i++){ temp = arr[i]; middleObj[temp] = 1; } for(temp in middleObj){ result.push(temp); } return result; }

去除数组中的重复数据

1 public static String[] array_unique(String[] a) { 2 Set<String> set = new HashSet<String>(); 3 set.addAll(Arrays.asList(a)); 4 return set.toArray(new String[0]); 5 } 去除数组中的重复数据