题目描述
长度为 n的数组中,数字介于 0~n-1 之间。数组中的某些数字是重复的,只要找出其中的一个重复的数字即可。
输入输出样例
输入:
[2, 3, 1, 0, 2, 5, 3]
输出:2 或 3
题解
(法一)使用hashset集合查重:
- Java中HashSet类的底层实现是HashMap
- HashMap的增删元素和查找元素的时间复杂度都是O(1)
这种解法需要额外的O(N)空间
class Solution {
public int findRepeatNumber(int[] nums) {
Set<Integer> set = new HashSet<Integer>();
for(int num:nums){
<