LeetCode热题100-两数之和【JavaScript讲解】
题目:
根据题目想思路:
使用哈希表进行索引查找。利用nums[j] = target - nums[i]
获得我们需要的值,在数组中进行查询。查询成功后返回这两个下标;否则当前元素的值和索引存储到哈希表中,以便后续查找。
题解:
/**
* @param {number[]} nums
* @param {number} target
* @return {number[]}
*/
var twoSum = function(nums, target) {
const map = {};
for(let i = 0; i < nums.length; i++){
const curNum = nums[i];
const targetNum = target - curNum;
const targetNumIndex = map[targetNum];
if(targetNumIndex !== undefined){
return [targetNumIndex,i]
}else{
map[curNum] = i //否则将当前的值和索引存到map中
}
}
};
通过