* Given an array of integers, return indices of the two numbers such that they add up to a specific target.
You may assume that each input would have exactly one solution, and you may not use the same element twice.
Example:
Given nums = [2, 7, 11, 15], target = 9,
Because nums[0] + nums[1] = 2 + 7 = 9,
return [0, 1].

首先需要遍历数组找到两个数的和为target 的元素,创建一个 hashMap 因为hashMap 的get()方法的时间复杂度是O(1) 最多 也是O(logn),将目标数target减去当前数组的元素的值存入map里以这个值为key 它的下标为value,,若map里有这个元素,表示target = 当前元素+map里存在的这个数,分别返回元素的下标即可。
网友评论