文档章节

去掉数组中重复的元素

歌颂_大海
 歌颂_大海
发布于 2017/09/04 10:53
字数 237
阅读 2
收藏 0
function unique1(arr){
      //i从0开始遍历arr,同时创建空数组result
      for(var i=0,result=[];i<arr.length;i++){
        //j从0开始,遍历result
        for(var j=0;j<result.length;j++){
          //如果result中当前元素等于arr中当前元素
          if(arr[i]==result[j]) break;//退出循环 
        }//(遍历结束)
        //如果j等于result的length
        if(j==result.length)
          //将arr中当前元素,追加到result末尾
          result[result.length]=arr[i];
      }//(遍历结束)
      return result;
    }
function unique2(arr){
 for(var i=0,result=[],hash=[];i<arr.length;i++){
    //如果hash中以arr当前元素作为key的元素是undefined
    if(hash[arr[i]]===undefined){
      //将arr当前元素追加到result结尾
      result[result.length]=arr[i];
      //为hash添加新元素,key为arr当前元素值,value都赋值为true
      hash[arr[i]]=true;
    }
 }
 return result;
}
for(var i=0,arr=[];i<1000000;i++){
      arr[i]=Math.floor(Math.random()*1000);
    }
    console.time("unique1");
    unique1(arr);
    console.timeEnd("unique1");
    console.time("unique2");
    unique2(arr);
    console.timeEnd("unique2");

对两种查找方式进行比较,第二种用时更少

© 著作权归作者所有

共有 人打赏支持
歌颂_大海
粉丝 0
博文 1
码字总数 237
作品 0
驻马店
程序员
私信 提问
用HashSet查找两个int数组中的相同元素

其实用两个循环嵌套就可以实现,但这里只是为了演示HashSet的去重功能。 import java.util.ArrayList; import java.util.HashSet; import java.util.Iterator; import java.util.List; impo...

JAVA_NINA
2011/01/07
0
0
第三章 数组相关操作

编写一段代码,将a设置为一个n个随机整数的数组,要求随机数介于0(包含)和n(不包含)之间。 2. 编写一个循环,将整数数组中相邻的元素置换。例如,Array(1,2,3,4,5)经过置换后变为Array(2,1,4...

小萝卜_
2016/06/08
39
0
ruby的Array总结

ruby的Array总结 2010-12-28 11:25:54| 分类: Ruby/Rails|字号 订阅 Array 作为一个类,其中方法有:(简单的就不想说明了,仅作参考)

BinYang
2012/11/01
0
0
jQuery Utilities

$.each(object,function(name,value){}),用于遍历对象和数组。 $.each( [0,1,2], function(i, n){alert( "Item #" + i + ": " + n );});$.each( { name: "John", lang: "JS" }, function(i......

梵高
2011/08/15
0
0
for in 和 for,以及getElementsByTagName('*')

由于原生js中,没有能通过class获取元素的方法,OK,来,自己写 正在我沾沾自喜的时候,尼玛,出幺蛾子了 页面结构是这样的 我了个擦,返回了一个8个元素的数组,有木有,好难过,这不是我想...

DennisHill
2016/12/27
2
0

没有更多内容

加载失败,请刷新页面

加载更多

颜色模型与颜色应用---RGB颜色模型

中国龙-扬科
28分钟前
3
0
网络优化-tcp和udp的协作

TODO

梦想游戏人
30分钟前
4
0
list和数组转化

Java中List转换为数组,数组转List List转换为Array可以这样处理: ArrayList<String> list=new ArrayList<String>(); String[] strings = new String[list.size()]; list.toArray(strings);......

west_coast
31分钟前
3
0
LSP 商户端API

Your domain:                  lsp-api-merchant.hhs2717.cnVirtualhost conf:             /usr/local/nginx/conf/vhost/lsp-api-merchant.hhs2717.cn.confDirectory of:......

BeanHo
40分钟前
2
0
设计模式 之 访问者模式

设计模式 之 访问者模式 概念 核心理念:将数据结构与算法分离。 使用场景:数据结构不变动,算法经常变动。 1、一个Visitor类存放被访问的对象,访问者主要处理具体算法与行为。 // 访问者...

GMarshal
44分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部