当前位置: 首页 > Web前端 > HTML

数组去重

时间:2023-03-28 00:25:28 HTML

数组去重的五种方法1.第一种方法是最简单的集合去重(o(n))vararr=[1,2,2,4,3,4,1,3,2,7,5,6,1]varnewArr=newSet(arr)2.第二种方式是使用indexOf去重(o(n^3))判断新数组中是否存在一个数函数fn(arr){letnewArr=[]arr.forEach((val)=>{if(newArr.indexOf(val)==-1){newArr.push(val)}})returnnewArr}//使用过滤器去重functionfn(arr){  returnarr.filter((item,index,arr)=>arr.indexOf(item)===index)}3.第三种方法普通去重(o(n^3))for(vari=0;i{arr1[val]=val})//arr1数组将为空//soreturnarr2arr1.forEach((val)=>{if(!!val){arr2.push(val)}}})returnarr2}5.排序并删除重复项(o(n^2))只比setfunctionfn(arr){letnewArr=[]arr.sort((a,b)=>{returna-b})arr.forEach((val,index)=>{if(val!=arr[index+1]){newArr.push(val)}})returnnewArr}