第一种方法 暴力破解:
public int[] getSum(int[] arr, int target){
for(int i = 0 ;i < arr.length; i++){
for(int j = i +1;j<arr.length;j++){
if(target == arr[i]+arr[j]){
return new int[]{i,j}
}
}
}
return new int[0];
}
第二种方法:containsKey 利用hashmap的key value来判断 逆向思维
public int[] getSum(int[] arr, int target){
Map<Integer,Integer> map = new HashMap<Integer,Integer>();
for(int i = 0;i<arr.length;i++){
map.put(arr[i],i);
}
for(int i =0;i<arr.length;i++){
if(map.containsKey(target - arr[i]) && map.get(target - arr[i]) != i){
return new int[]{i,map.get(target - arr[i])};
}
}
return new int[0];
}