1.1 暴力解法
for(let i = 0;i<nums.length;i++){
for(let j = i+1;j<nums.length;j++){
if(nums[i] + nums[j] == target){
return [i,j];
}
}
}
1.2 哈希(Map)
– | – |
---|---|
map.clear () | 清除所有的键值对 |
map.delete (key) | 移除该元素 |
map.get(key) | 返回对应的value |
map.has(key) | 是否包含对应的值 |
map.set(key,value) | 设置对应的键值 |
1.2.1 代码块
const map = new Map();
// 遍历数组
for(let i = 0;i<nums.length;i++){
const complent = target -nums[i]
if(map.has(complent)){
return [map.get(complent),i];
}
else{
map.set((nums[i]),i);
}
}
return [];