通过lastIndexOf()来判断的算法时间复杂度为O(n)的解法

查找重复元素

http://www.nowcoder.com/practice/871a468deecf453589ea261835d6b78b

解题思路: 通过创建一个存放结果的数组 遍历一次数组,通过lastIndexOf()函数来获取该元素值在数组中最后出现的下标值,如果该下标值并不等于当前下标值,说明该值不唯一,加上与&&条件,在将该数存放到结果数组前,判断是否已经存在,已经存在,说明该值在原数组中出现的次数>=3.

{"js":"function duplicates(arr) {
	let result = []
    for(let i = 0 ; i < arr.length ; i++){        
    	if(arr.lastIndexOf(arr[i]) !== i && !result.includes(arr[i])){
        	result.push(arr[i])
        }
    }    
    return result
}"
全部评论

相关推荐

06-08 22:25
门头沟学院 Java
从零开始的转码生活:这hr不会打开手机不分青红皂白给所有人群发这句话,过一会再给所有人再发一遍,这肯定会有重复的,不管,再过一会再发一遍
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务