找出数组中重复的数字

This commit is contained in:
zeek 2020-03-31 20:46:15 +08:00
parent a2d5676d0e
commit f7c5639666
1 changed files with 30 additions and 0 deletions

View File

@ -0,0 +1,30 @@
package string;
import java.util.HashSet;
import java.util.Set;
/**
* @apiNote 找出数组中重复的数字
* 在一个长度为 n 的数组 nums 里的所有数字都在 0n-1 的范围内数组中某些数字是重复的但不知道有几个数字重复了
* 也不知道每个数字重复了几次请找出数组中任意一个重复的数字
* 输入
* [2, 3, 1, 0, 2, 5, 3]
* 输出2 3
* @author zeekling
* @version 1.0
* @date 2020-03-31
*/
public class FindRepeatNumber {
public int findRepeatNumber(int[] nums) {
Set<Integer> set = new HashSet<Integer>();
int repeat = -1;
for (int num : nums) {
if (!set.add(num)) {
repeat = num;
break;
}
}
return repeat;
}
}