给定 n个整数 a 1 , a 2 , … , a n 请你找出这些整数中一共有多少个互不相同的整数。 例如: 3 , 1 , 2 , 1 , 5 中一共有 4个互不相同的正整数,分别是 1 , 2 , 3 , 5 1,2,3,5。
时间: 2024-10-03 22:00:57 浏览: 25
这个问题是要统计给定一组整数序列中互不相同的元素的数量。你可以通过创建一个哈希集合(如Python中的set或Java中的HashSet)来解决。遍历数组,每次遇到一个新的数就添加到集合中,因为集合内部会自动去除重复项。最后集合的大小就是互不相同的整数的数量。
举个例子,在 Python 中,可以这样做:
```python
def unique_numbers(arr):
unique_set = set(arr)
return len(unique_set)
# 测试
arr = [3, 1, 2, 1, 5]
print(unique_numbers(arr)) # 输出:4
```
在 Java 中,可以这样做:
```java
import java.util.HashSet;
public class Main {
public static int countUniqueNumbers(int[] arr) {
HashSet<Integer> uniqueSet = new HashSet<>();
for (int num : arr) {
uniqueSet.add(num);
}
return uniqueSet.size();
}
// 测试
public static void main(String[] args) {
int[] arr = {3, 1, 2, 1, 5};
System.out.println(countUniqueNumbers(arr)); // 输出:4
}
}
```
阅读全文