HashMap
import java.util.*;
public class Solution {
//注意,下标值从 1 开始
public int[] twoSum (int[] numbers, int target) {
// write code here
HashMap<Integer, Integer> map = new HashMap<>();
for (int i = 0; i < numbers.length; i++) {
//map 里面放键为每个数的结果,值为下标
//每次放入的时候看是否包含( target - 当前值)
//有的话说明当前值和已包含的值下标的那个元素为需要的结果
if (map.containsKey(target - numbers[i]))
return new int[]{map.get(target - numbers[i]) + 1, i + 1};
else map.put(numbers[i], i);
}
return new int[]{1, 1};
}
}
京公网安备 11010502036488号