LeetCode第38天 - 217. 存在重复元素
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode第38天 - 217. 存在重复元素相关的知识,希望对你有一定的参考价值。
217. 存在重复元素
- 题目描述
- 解题思路
- 代码实现
题目描述
解题思路
第一种思路:
先对nums数组排序,然后再在遍历nums,如果nums[i] == nums[i + 1],则返回true。
第二种思路:
利用Set集合的性质(不存储相同值),遍历一次nums集合并set.add(),如果add失败,则存在相同元素,返回true。
这里是Set系列集合的源码分析:【攻克java集合系列(三)】java集合中的Set系列集合全面分析
代码实现
class Solution
public boolean containsDuplicate(int[] nums)
Set<Integer> set = new HashSet<Integer>();
for(int num:nums)
if(!set.add(num))
return true;
return false;
// 以下为思路一:
// Arrays.sort(nums);
// int length = nums.length;
// for (int i = 0; i < length - 1; i++)
// if (nums[i] == nums[i + 1])
// return true;
//
//
// return false;
以上是关于LeetCode第38天 - 217. 存在重复元素的主要内容,如果未能解决你的问题,请参考以下文章
LeetCode Algorithm 217. 存在重复元素