查找数组中的重复元素
程序员文章站
2022-07-12 09:28:33
...
1、使用HashMap
int[]arr = new int[]{1,2,3,4,5,3,2};
Map<Integer,Integer> arrMap=new HashMap<>();
for(int i=0;i< arr.length;i++){
if(arrMap.containsKey(arr[i])){
System.out.println("重复元素:"+arr[i]);
System.out.println("重复位置的索引:"+arrMap.get(arr[i])+" "+i);
}
//必须先查找再put,以免查找到自身
arrMap.put(arr[i],i);
}
重复元素:3
重复位置的索引:2 5
重复元素:2
重复位置的索引:1 6
2、暴力循环查找
int[]arr = new int[]{1,2,3,4,5,3,2};
for(int i=0;i<arr.length;i++){
for (int j=i+1;j<arr.length;j++){
if(arr[i]==arr[j]){
System.out.println("重复元素:"+arr[i]);
System.out.println("重复位置的索引:"+i+" "+j);
}
}
}
重复元素:2
重复位置的索引:1 6
重复元素:3
重复位置的索引:2 5
上一篇: 快速除去数组中某个值的元素和重复的元素
下一篇: Spiral Matrix