题目:给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。
var nums = [4, 5, 0, 23, 2],target = 7;
时间复杂度 为O(n)
b站一位大佬的视频的写法,Map真香
var twoSum = function(nums, target) {
const map = new Map()
for (let i = 0; i < nums.length; i++) {
const complement = target - nums[i]
if (map.has(complement)) {
return [map.get(complement), i] //get是获取map里的值,下面反过来存,这里就刚好获取的是对应值的下标
} else {
map.set(nums[i], i)
}
}
return []
};
console.log(twoSum(nums, target))