/**
* 判断数组中是否有重复的值
*/
//最优法
public static boolean checkRepeat(Object[] arr) {
Set<Object> set = new HashSet<Object>(arr.length);
for (int i = 0; i < arr.length; i++) {
set.add(arr[i]);
}
if (set.size() != arr.length)
return true;
return false;
}
//一般法
public static boolean checkRepeat(Object[] arr) {
for (int i = 0; i < arr.length - 1; i++) {
for (int j = i + 1; j < arr.length; j++) {
if (arr[i].equals(arr[j]))
return true;
}
}
return false;
}

本文介绍了一种在数组中快速判断是否存在重复元素的高效算法,对比了两种实现方式:一种是利用HashSet的数据结构,另一种是传统的双重循环遍历。通过分析这两种方法的时间复杂度,展示了使用HashSet进行判断的优越性。
2923

被折叠的 条评论
为什么被折叠?



