给你一个整数数组 nums 。如果任一值在数组中出现 至少两次 ,返回 true ;如果数组中每个元素互不相同,返回 false 。
示例 1:
输入:nums = [1,2,3,1]
输出:true
示例 2:
输入:nums = [1,2,3,4]
输出:false
示例 3:
输入:nums = [1,1,1,3,3,4,3,2,4,2]
输出:true
提示:
1 <= nums.length <= 105
-109 <= nums[i] <= 109
package PTAPractice;
import java.util.Scanner;
public class leetcode217 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n=sc.nextInt();
int nums[]=new int [n];
for (int i = 0; i <n ; i++) {
nums[i]=sc.nextInt();
}
sort(nums,0,nums.length-1);
for (int i = 0; i <n-1 ; i++) {
if(nums[i]==nums[i+1]){
System.out.println("true");
}
}
System.out.println("false");
}
public static void swap(int nums[],int left,int right){
int temp=nums[left];
nums[left]=nums[right];
nums[right]=temp;
}
public static void sort(int nums[],int left,int right){
if(left>=right){
return;
}
int index=nums[left];
int i=left,j=right;
while(i<j){
while(i<j && nums[j]>=index){
j--;
}
while (i<j && nums[j]<=index){
i++;
}
swap(nums,i,j);
}
swap(nums,i,left);
sort(nums,left,i-1);
sort(nums,i+1,right);
}
}