题目描述
给定一个整型数组,找出其中的两个数使其和为某个指定的数,并返回两个数的下标。
思路
这里其实要考虑数组可能出现相同值的情况。
public int[] twoSum(int[] nums, int target) {
int[] result=new int[2];
Map<Integer,Integer> map=new HashMap<Integer,Integer>();
for(int i=0;i<nums.length;i++){
if(map.containsKey(target-nums[i]) ){
result[0]=i;
result[1]=map.get(target-nums[i]);
break;
}
map.put(nums[i],i);
}
return result;
}