二刷
import java.util.*;
public class Solution {
/**
*
* @param numbers int整型一维数组
* @param target int整型
* @return int整型一维数组
*/
public int[] twoSum (int[] numbers, int target) {
HashMap<Integer,Integer> map = new HashMap<>();
int[] res = new int[2] ;
for(int i=0;i<numbers.length;i++){
if(map.containsKey(numbers[i])){
res = new int[]{map.get(numbers[i])+1,i+1};
}
else{
map.put(target-numbers[i],i);
}
}
return res;
}
}1.哈希哈希哈希
import java.util.*;
public class Solution {
/**
*
* @param numbers int整型一维数组
* @param target int整型
* @return int整型一维数组
*/
public int[] twoSum (int[] numbers, int target) {
HashMap<Integer, Integer> map = new HashMap<Integer, Integer>();
int[] res = new int[2];
for(int i=0; i<numbers.length ; i++){
if(map.containsKey(target - numbers[i])){
int small;
int large;
if( i> map.get(target - numbers[i])){
large = i;
small = map.get(target - numbers[i]);
}
else{
small = i;
large = map.get(target - numbers[i]);
}
res[0] = small+1;
res[1] = large+1;
return res;
}
else if (!map.containsKey(numbers[i])){
map.put(numbers[i],i);
}
}
return res;
}
}


京公网安备 11010502036488号