给你一个整数数组 nums 。如果任一值在数组中出现 至少两次 ,返回 true ;如果数组中每个元素互不相同,返回 false 。用Java的set集合写代码
时间: 2023-12-04 08:04:00 浏览: 65
import java.util.Set;
import java.util.HashSet;
public class Solution {
public boolean containsDuplicate(int[] nums) {
Set<Integer> set = new HashSet<>();
// 遍历数组,如果有元素已经存在于集合中,返回 true
for (int num : nums) {
if (set.contains(num)) {
return true;
}
set.add(num);
}
// 如果遍历完整个数组,都没有重复元素,返回 false
return false;
}
}
// 示例输入:nums = {1,2,3,1}
// 示例输出:true
相关问题
给你一个整数数组 nums 。如果任一值在数组中出现 至少两次 ,返回 true ;如果数组中每个元素互不相同,返回 false 。
这是一个编程类的问题,我可以回答。这个问题可以通过使用哈希表来解决,我们可以遍历整个数组,将每个元素作为键存储在哈希表中,如果发现重复的元素,则返回 true,否则返回 false。以下是示例代码:
bool containsDuplicate(vector<int>& nums) {
unordered_set<int> hashSet;
for (int num : nums) {
if (hashSet.count(num) > 0) {
return true;
}
hashSet.insert(num);
}
return false;
}
给你一个整数数组 nums 。如果任一值在数组中出现 至少两次 ,返回 true ;如果数组中每个元素互不相同,返回 false 。的代码
以下是判断整数数组是否存在重复元素的代码:
```
bool containsDuplicate(vector<int>& nums) {
unordered_set<int> s;
for (int num : nums) {
if (s.count(num)) {
return true;
}
s.insert(num);
}
return false;
}
```
这段代码使用了 unordered_set 来记录已经出现过的元素,如果遍历到的元素已经在 set 中出现过,就说明存在重复元素,返回 true。否则将该元素插入 set 中,继续遍历。
阅读全文