Two Sum
给一个数组和一个target, 问数组那两个数能组成这个target. 可以直接找, n^2, 也可以用一个map存targe和当前元素的差.
public class Solution {
public int[] twoSum(int[] nums, int target) {
if(nums.length < 2 || nums == null)
return null;
HashMap<Integer, Integer> maps = new HashMap<Integer, Integer>();
for(int i = 0 ; i < nums.length; i++) {
if(maps.containsKey(target - nums[i]))
return new int[]{maps.get(target-nums[i])+1, i+1};
else
maps.put(nums[i],i);
}
return null;
}
}