博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【leetcode】16 3Sum Closest
阅读量:5124 次
发布时间:2019-06-13

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

1548341-20181129110221619-1525960774.jpg

描述

给定一个数字集合 S 以及一个数字 target,需要从集合中找出3个数字的和与这个 target的值最接近(绝对值最小)

样例

Input: S = [-1, 2, 1, -4], target = 1 Output: 2

思路

首先排序,之后确定一个数字的前提下,再利用双指针从两端向中间扫描,求

min | a+b+c - target| ,其中 a,b ,c 是 集合中数字。

代码

#include
#include
#include
#include
#include
#include
#include
using namespace std;class Solution {public: int threeSumClosest(vector
& nums, int target) { sort(nums.begin(),nums.end()); int maxdiff = INT_MAX; int res = 0; int len = nums.size(); for(int i=0;i
target){ end--; } else if(threeSum < target){ start++; } } } return res; }};int main(){ // vector
nums{0,2,1,-3}; vector
nums{-1, 2, 1, -4}; int target = 1; Solution ss; cout<
<

参考链接


转载于:https://www.cnblogs.com/wei-huan/p/10037149.html

你可能感兴趣的文章
腾讯元对象存储之文件删除
查看>>
jdk环境变量配置
查看>>
安装 Express
查看>>
包含列的索引:SQL Server索引的阶梯级别5
查看>>
myeclipse插件安装
查看>>
浙江省第十二届省赛 Beauty of Array(思维题)
查看>>
NOIP2013 提高组 Day1
查看>>
cocos2dx 3.x simpleAudioEngine 长音效被众多短音效打断问题
查看>>
存储(硬件方面的一些基本术语)
查看>>
观察者模式
查看>>
Weka中数据挖掘与机器学习系列之基本概念(三)
查看>>
Win磁盘MBR转换为GUID
查看>>
大家在做.NET B/S项目的时候多用什么设技术啊?
查看>>
Java SE和Java EE应用的性能调优
查看>>
Android设计模式系列--原型模式
查看>>
免费的论文查重网站
查看>>
C语言程序第一次作业
查看>>
leetcode-Sort List
查看>>
中文词频统计
查看>>
了解node.js
查看>>