您的位置:首页 > 其它

数组去重之两个数组找出相同的组成新数组

2018-03-02 15:09 309 查看
/**
* Created by Administrator on 2017/6/21.
*/
/*
*要求去重arr,brr相同的数
* 常规办法。
*/
function getRepeat(arr,brr){
var newArr=[];
for(var i=0;i<arr.length;i++){
for(var j=0;j<brr.length;j++){
if(arr[i]===brr[j]){
newArr.push(arr[i])
}
}
}
return newArr;
}

//hash数组方法,适合元素较多时。
function getRepeat1(arr,brr){
var newArr=[];
var hash={};
for(var i=0;i<arr.length;i++){
hash[arr[i]]=1;
}
for(var j=0;j<brr.length;j++){
if(brr[j] in hash){
debugger;
newArr.push(brr[j])
}
}
return newArr;
}
console.log(getRepeat1([0,2,3,4,9],[0,5,3,8,6,8,9]))

for(var i= 0,nums=[];i<10000;i++){
nums.push(parseInt(Math.random()*500+100))
}
for(var i= 0,news=[];i<10000;i++){
news.push(parseInt(Math.random()*500+100))
}
console.time("repeat1");
getRepeat(nums,news);8
console.timeEnd("repeat1");
console.time("repeat2");
getRepeat1(nums,news);
console.timeEnd("repeat2");

4000
//字符串倒序
var a="abcdefg".split("").reverse().join("");
var b="  sss aa aa dd ".replace(/\s*/g,"")
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: