LeetCode16.最接近的三数之和 JavaScript
Posted 小李HH
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode16.最接近的三数之和 JavaScript相关的知识,希望对你有一定的参考价值。
给定一个包括 n 个整数的数组 nums
和 一个目标值 target
。找出 nums
中的三个整数,使得它们的和与 target
最接近。返回这三个数的和。假定每组输入只存在唯一答案。
例如,给定数组 nums = [-1,2,1,-4], 和 target = 1. 与 target 最接近的三个数的和为 2. (-1 + 2 + 1 = 2).
答案参考
/** * @param {number[]} nums * @param {number} target * @return {number} */ var threeSumClosest = function(nums, target) { nums=nums.sort(function(a,b){return a-b}) var i=0; var num=nums[0]+nums[1]+nums[2]; var and=num for(var i=0;i<nums.length-2;i++){//和三数之和一样,我先用的while循环,现在用的 //for循环 var k=nums.length-1 for(var j=i+1;j<nums.length-1&&j!=k;){ sum=nums[i]+nums[j]+nums[k]; if(Math.abs(target-sum)<=Math.abs(target-and)){ and=sum num=Math.abs(target-sum) } if(target-sum>0){ j++; } else{ k-- } } } return and };
以上是关于LeetCode16.最接近的三数之和 JavaScript的主要内容,如果未能解决你的问题,请参考以下文章
算法leetcode|16. 最接近的三数之和(rust重拳出击)