题解 | #两数之和#
两数之和
https://www.nowcoder.com/practice/20ef0972485e41019e39543e8e895b7f
//为什么都是只管两个,是我理解有误吗,尝试写了下能处理所有情况的,初学者有错误还请各位执政
/**
* * @param numbers int整型一维数组
* @param target int整型
* @return int整型一维数组
*/
function twoSum( numbers , target ) {
// write code here
const ans = new Array();
let map = new Map();//用哈希表进行数据存储
let n = numbers.length;
for(let i = 0;i < n;i++){
if(map.has(target - numbers[i])){
ans.unshift(map.get(target - numbers[i]) + 1);
ans.push(i+1);
}else{
map.set(numbers[i],i);
}
}
return ans;
}
module.exports = {
twoSum : twoSum
};