leetcode刷题之旅

时间:2020-03-06 00:56:10   收藏:0   阅读:45

1.两数之和

解法1 两次for或者for+indexOf

var twoSum = function (nums, target) {
    let len = nums.length
    for (let i = 0; i < len; i++) {
        let j = nums.indexOf(target - nums[i], i + 1)
        if (j !== -1) {
            return [i, j]
        }
    }
};

  技术图片

解法2

var twoSum = function (nums, target) {
    let map = new Map()
    for (let i = 0; i < nums.length; i++) {
        let j = target - nums[i]
        if(map.has(j)){
            return [map.get(j),i]
        }
        map.set(nums[i],i)
    }
};

  技术图片

技术图片

 

 

 

 2.

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!