JS 刷 Leetcode:217. 存在重复元素

简介: JS 刷 Leetcode:217. 存在重复元素

1. 题目

给定一个整数数组,判断是否存在重复元素。

如果存在一值在数组中出现至少两次,函数返回 true 。如果数组中每个元素都不相同,则返回 false 。

示例 1:

输入: [1,2,3,1]
输出: true
  • 示例 2:
输入: [1,2,3,4]
输出: false
  • 示例 3:
输入: [1,1,1,3,3,4,3,2,4,2]
输出: true

3. 解

  1. 思路一:可以先排序,然后判断有无两个相邻的数相等
  2. 思路二:利用Set函数建立哈希表,用has()判断是否重复,不重复就add()
  3. 思路三:利用Set判断去重后的数组与原数组长度是否相等

这里直接展示思路三

/**
 * @param {number[]} nums
 * @return {boolean}
 */
var containsDuplicate = function(nums) {
  return new Set(nums).size != nums.length
};

复杂度分析

  • 时间复杂度:O(1)
  • 空间复杂度: O(n)

image.png

相关文章
|
2天前
|
存储
力扣 合并两个有序数列||移除元素
力扣 合并两个有序数列||移除元素
7 0
|
3天前
|
JavaScript 前端开发
JavaScript 的数组方法 map()、filter() 和 reduce() 提供了函数式编程处理元素的方式
【5月更文挑战第11天】JavaScript 的数组方法 map()、filter() 和 reduce() 提供了函数式编程处理元素的方式。map() 用于创建新数组,其中元素是原数组元素经过指定函数转换后的结果;filter() 则筛选出通过特定条件的元素生成新数组;reduce() 将数组元素累计为单一值。这三个方法使代码更简洁易读,例如:map() 可用于数组元素乘以 2,filter() 用于选取偶数,reduce() 计算数组元素之和。
11 2
|
3天前
|
存储 JavaScript 前端开发
深入了解JavaScript中的indexOf()方法:实现数组元素的搜索和索引获取
深入了解JavaScript中的indexOf()方法:实现数组元素的搜索和索引获取
9 0
|
3天前
leetcode代码记录(下一个更大元素 II
leetcode代码记录(下一个更大元素 II
8 0
|
3天前
|
索引
leetcode代码记录(下一个更大元素 I
leetcode代码记录(下一个更大元素 I
8 0
|
3天前
leetcode代码记录(移除链表元素
leetcode代码记录(移除链表元素
10 0
|
3天前
leetcode代码记录(移除元素
leetcode代码记录(移除元素
10 0
|
3天前
|
JavaScript 前端开发 索引
js添加、删除、替换、插入元素的方法
js添加、删除、替换、插入元素的方法
12 0
|
3天前
|
JavaScript 前端开发 容器
js操作dom元素
js操作dom元素
16 0
|
3天前
|
JavaScript 前端开发
js选取页面元素的方法
js选取页面元素的方法
14 2

热门文章

最新文章