/**
*
* @param numbers int整型一维数组
* @param target int整型
* @return int整型一维数组
*/
function twoSum( numbers , target ) {
// write code here
for(let i=0; i<numbers.length; i++) {
let n1 = numbers[i]
if (n1 > target) continue;
let n2 = target - n1
let j = numbers.lastIndexOf(n2)
if (numbers.includes(n2) && j > 0 && j !== i) {
return [i+1, j+1]
}
}
}
module.exports = {
twoSum : twoSum
};
主要在于否定:
- 一旦发现大于target,直接continue
- 一旦找到答案,直接return,结束循环

京公网安备 11010502036488号