-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathleetcode287.java
More file actions
30 lines (28 loc) · 854 Bytes
/
Copy pathleetcode287.java
File metadata and controls
30 lines (28 loc) · 854 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
package leetcode;
public class leetcode287 {
public static void main(String[] args) {
System.out.println(findDuplicate(new int[]{8,7,1,10,17,15,18,11,16,9,19,12,5,14,3,4,2,13,18,18}));
}
public static int findDuplicate(int[] nums) {
int result=0;
for(int i=0;i<nums.length;i++){
if(nums[i]==nums[nums[i]-1]&&i!=nums[i]-1){
result=nums[i];
return result;
}
if(nums[i]==nums[nums[i]-1]&&i==nums[i]-1){
continue;
}
if(nums[i]!=nums[nums[i]-1]){
int temp=nums[nums[i]-1];
nums[nums[i]-1]=nums[i];
nums[i]=temp;
if (i-1>=0){
i--;
}
continue;
}
}
return result;
}
}