Java
class Solution {
public int duplicateInArray(int[] nums) {
for(int num:nums){
if(num<0||num>nums.length-1) return -1;
}
for(int i=0;i<nums.length;i++){
while(i!=nums[i]){
if(nums[i]==nums[nums[i]]){
return nums[i];
}
swap(nums,i,nums[i]);
}
}
return -1;
}
private void swap(int []nums,int i,int j){
int temp=nums[i];
nums[i]=nums[j];
nums[j]=temp;
}
}