美文网首页
js测试题

js测试题

作者: 转身那一眼红颜 | 来源:发表于2018-02-11 22:33 被阅读0次

    给定一个整数字符串,找出和为特定数字的两个数。
    两数和(twoSum)这个函数应该返回和为目标值的两个数字的下标。
    可以假设每个输入都会只有一种答案,并且同样的元素不能被重用。

    示例:
    给定 nums = [2, 7, 11, 15], target = 9,
    因为 nums[0] + nums[1] = 2 + 7 = 9,
    返回 [0, 1].
    
    var twoSum = function (nums, target) {
        var x = [];
        for (var i = 0; i < nums.length; i++) {
            for (var j = 1; j < nums.length; j++) {
                if (i != j && nums[i] + nums[j] === target) {
                    x.push(i);
                    x.push(j);
                    return x;
                }
    
            }
        }
    }
    console.log(twoSum([2, 7, 11, 15],9))
    
    var twoSum = function (nums, target) {
        var ans = []; var map = []; for (var i = 0; i < nums.length; i++) {
            if (map[target - nums[i]] !== undefined) {
                ans[0] = parseInt(map[target - nums[i]]);
                ans[1] = i;
                return ans;
            }
            map[nums[i]] = i;
        }
    }
    console.log(twoSum([2, 7, 11, 15], 9))
    

    相关文章

      网友评论

          本文标题:js测试题

          本文链接:https://www.haomeiwen.com/subject/mviltftx.html