哈希
- 创建一个map
 - 遍历数组,如果在map中找到target-numbers[I],则返回结果
 - 否则,加入map中
 
注意:
map.get()返回下标或者undefined- 返回的是
[another+1,i+1]而不是[i+1,another+1],比如[3,2,4],把2加入,把4加入找到了2, 因此返回的是[another+1,i+1] 
function twoSum( numbers ,  target ) {
  let map = new Map();
  for(let i=0; i<numbers.length; i++){
    let another = map.get(target-numbers[i])
    if( another!=undefined){
      return [another+1,i+1];
    }
    map.set(numbers[i],i);
  }
}
module.exports = {
    twoSum : twoSum
};

京公网安备 11010502036488号