LeetCode--016--最接近的三数之和(java)
给定一个包括 n 个整数的数组 nums 和 一个目标值 target。找出 nums 中的三个整数,使得它们的和与 target 最接近。返回这三个数的和。假定每组输入只存在唯一答案。
例如,给定数组 nums = [-1,2,1,-4], 和 target = 1. 与 target 最接近的三个数的和为 2. (-1 + 2 + 1 = 2). 这里和14是不同就是条件变为与target的距离最小,只要把15中==的条件变为本题所要求的的就好了,其他趋同。
class Solution {
public int threeSumClosest(int[] nums, int target) {
Arrays.sort(nums);
//List<Integer> list = new List<Integer>();
int min_sum = Integer.MAX_VALUE,min_distance = Integer.MAX_VALUE;
for(int i = 0; i < nums.length - 2;i++){
int low = i + 1,high = nums.length - 1;
while(low < high){
int sum = nums[i] + nums[low] + nums[high];//这一句一定要放在while循环里面!!!!
if(Math.abs(sum - target) <min_distance){
min_sum = sum;
min_distance = Math.abs(sum - target);
}
if(sum > target){
high--;
}else{
low++;
}
}
}
return min_sum;
}
}
2019-04-14 11:38:26
哎第二次写,第一下想到的还是这种思路(python)
class Solution:
def threeSumClosest(self, nums: List[int], target: int) -> int:
n = len(nums)
nums.sort()
min_=sys.maxsize
for i in range (n-1):
L = i+1
R=n-1
while L < R:
temp = abs(nums[i]+nums[L]+nums[R]-target)
if temp < min_:
min_=temp
res=nums[i]+nums[L]+nums[R]
elif nums[i]+nums[L]+nums[R]>target:
R-=1
else:
L+=1
return res
2019-11-28 09:09:11
LeetCode--016--最接近的三数之和(java)的更多相关文章
- LeetCode:最接近的三数之和【16】
LeetCode:最接近的三数之和[16] 题目描述 给定一个包括 n 个整数的数组 nums 和 一个目标值 target.找出 nums 中的三个整数,使得它们的和与 target 最接近.返回这 ...
- Java实现 LeetCode 16 最接近的三数之和
16. 最接近的三数之和 给定一个包括 n 个整数的数组 nums 和 一个目标值 target.找出 nums 中的三个整数,使得它们的和与 target 最接近.返回这三个数的和.假定每组输入只存 ...
- leetcode.数组.16最接近的三数之和-java
1. 具体题目 给定一个包括 n 个整数的数组 nums 和 一个目标值 target.找出 nums 中的三个整数,使得它们的和与 target 最接近.返回这三个数的和.假定每组输入只存在唯一答案 ...
- LeetCode 16. 最接近的三数之和(3Sum Closest)
题目描述 给定一个包括 n 个整数的数组 nums 和 一个目标值 target.找出 nums 中的三个整数,使得它们的和与 target 最接近.返回这三个数的和.假定每组输入只存在唯一答案. 例 ...
- 【LeetCode】最接近的三数之和【排序,固定k1,二分寻找k2和k3】
给定一个包括 n 个整数的数组 nums 和 一个目标值 target.找出 nums 中的三个整数,使得它们的和与 target 最接近.返回这三个数的和.假定每组输入只存在唯一答案. 例如,给定数 ...
- [LeetCode] 16. 最接近的三数之和
题目链接:https://leetcode-cn.com/problems/3sum-closest/ 题目描述: 给定一个包括 n 个整数的数组 nums 和 一个目标值 target.找出 num ...
- LeetCode 16. 3Sum Closest(最接近的三数之和)
LeetCode 16. 3Sum Closest(最接近的三数之和)
- Leetcode题库——16.最接近的三数之和
@author: ZZQ @software: PyCharm @file: threeSumClosest.py @time: 2018/10/14 20:28 说明:最接近的三数之和. 给定一个包 ...
- LeetCode-016-最接近的三数之和
最接近的三数之和 题目描述:给定一个包括 n 个整数的数组 nums 和 一个目标值 target.找出 nums 中的三个整数,使得它们的和与 target 最接近.返回这三个数的和.假定每组输入只 ...
随机推荐
- Docker命令详解(run篇)
命令格式:docker run [OPTIONS] IMAGE [COMMAND] [ARG...] Usage: Run a command in a new container 中文意思为:通过r ...
- findStr
目录 规则 目录结构 src/main.cpp src/findstr.cpp include/findstr.h ft/TestCase.cpp ft/makefile ftbuild.sh mai ...
- python基础(1)-helloworld
搭建python运行环境 下载python安装包 配置好环境变量,可参考此链接 第一个helloworld #单行注释 '''多行注释''' """多行注释"& ...
- 附8 zipkin
一.zipkin作用 全链路追踪工具(查看依赖关系) 查看每个接口.每个service的执行速度(定位问题发生点或者寻找性能瓶颈) 二.zipkin工作原理 创造一些追踪标识符(tracingId,s ...
- word2vec:将bin转换为txt
转自:https://blog.csdn.net/u011684265/article/details/78024064 from gensim.models import word2vec mode ...
- 判断是否滚动加载结束 用一个公共变量isScroll来控制
如果还没达到最大页数,isScroll就一直是不变,ajax正常进行.如果达到最大页数,就不执行ajax操作了...
- MySQL Backup mysqldump备份流程学习
我们都知道MySQL逻辑备份工具mysqldump可以保证备份数据的一致性,但是它是怎么保持一致性的? 本文不讨论mysqldump具体的选项和用法,一直对mysqldump的工作机制梳理的不太清楚, ...
- React 添加对 Less 的支持, 使用 create-react-app 脚手架
---恢复内容开始--- 参考博客与我自己的当前版本有一点出入, 所以就将 参考博客写到文章后面去了. 我的电脑: 系统: Ubuntu16.04, 1, 安装脚手架: create-react-a ...
- 细说flask数据库迁移
什么情况下要用数据库迁移? 在开发过程中,需要修改数据库模型,而且还要在修改之后更新数据库.最直接的方式就是删除旧表,但这样会丢失数据. 更好的解决办法是使用数据库迁移框架,它可以追踪数据库模式的变化 ...
- n皇后问题——关于斜线的编号
题目大意:在n*n的棋盘中,放置n个皇后(同一行.同一列.同一斜线,只有一个皇后) 这道题是一道非常经典的dfs模板题,同一行.同一列的判断不是很难,但同一斜线有一定的难度,下面给出关于斜线编号的解决 ...