博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[LeetCode][JavaScript]3Sum Closest
阅读量:4308 次
发布时间:2019-06-06

本文共 1542 字,大约阅读时间需要 5 分钟。

3Sum Closest 

Given an array S of n integers, find three integers in S such that the sum is closest to a given number, target. Return the sum of the three integers. You may assume that each input would have exactly one solution.

For example, given array S = {-1 2 1 -4}, and target = 1.    The sum that is closest to the target is 2. (-1 + 2 + 1 = 2).

 

 


 

 

与3Sum相同的思路

每一轮先固定一个数,用双指针指向数组的头和尾。

如果目前三个数的和小于target,头指针++,否则尾指针--,直到指针碰到为止,记录最接近的结果。

1 /** 2  * @param {number[]} nums 3  * @param {number} target 4  * @return {number} 5  */ 6 var threeSumClosest = function(nums, target) { 7     var min = Infinity; 8     var res = 0; 9     nums = nums.sort(sorting);10 11     for(var i = 0; i < nums.length - 2; i++){12         if(nums[i - 1] !== undefined && nums[i - 1] === nums[i]){13             continue;14         }15         var curr = nums[i];16         var m = i + 1;17         var n = nums.length - 1;18         while(m < n){19             var tmp = Math.abs(nums[m] + nums[n] + curr - target);20             if(tmp < min){21                 min = tmp;22                 res = nums[m] + nums[n] + curr;23             }24 25             if(nums[m] + nums[n] + curr < target){26                 m++;27             } else {28                 n--;29             }30         }31     }32     return res;33 34     function sorting(a, b){35         if(a > b){36             return 1;37         }else if(a < b){38             return -1;39         }else{40             return 0;41         }42     }43 };

 

 

 

转载于:https://www.cnblogs.com/Liok3187/p/4609057.html

你可能感兴趣的文章
海龟交易法则08_风险与资金管理
查看>>
海龟交易法则09_海龟式积木
查看>>
海龟交易法则10_通用积木
查看>>
海龟交易法则14_掌控心魔
查看>>
海龟交易法则16_附原版海龟交易法则
查看>>
克罗谈投资策略01_期货交易中的墨菲法则
查看>>
克罗谈投资策略02_赢家和输家
查看>>
克罗谈投资策略03_你所期望的赌博方式
查看>>
克罗谈投资策略04_感觉与现实
查看>>
通向财务自由之路01_导读
查看>>
通向财务自由之路02_成功的决定因素:你
查看>>
中低频量化交易策略研发01_引言
查看>>
中低频量化交易策略研发06_推进的择时策略
查看>>
史丹·温斯坦称傲牛熊市的秘密
查看>>
期货市场技术分析01_理论基础
查看>>
期货市场技术分析02_趋势的基本概念
查看>>
期货市场技术分析03_主要反转形态
查看>>
期货市场技术分析04_持续形态
查看>>
期货市场技术分析05_交易量和持仓兴趣
查看>>
TB交易开拓者入门教程
查看>>