暴力解法:
var containsDuplicate = function(nums) {
if(nums.length == 1){
return false
}
for(let i = 0 ; i <nums.length-1;i++){
for( let j = i+1 ;j < nums.length; j++){
if(nums[i] === nums[j] ){
return true
}
}
return false
}
};
时间复杂度:o(n*2)
sort排序
var containsDuplicate = function(nums) {
nums.sort((a,b) => a-b)
for(let i = 0 ; i <nums.length-1 ; i++){
if(nums[i] === nums[i+1]){
return true
}
}
return false
};
哈希表
var containsDuplicate = function(nums) {
let set = new Set
// let num1 =
for(let i of nums){
if(set.has(i)) {
return true
}
set.add(i)
}
return false
};
直接使用ES6中的set类
var containsDuplicate = function(nums) {
return new Set(nums).size !== nums.length
};