首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Leetcode打卡 | No.016 最接近的三之和

---- No.16 最接近的三之和 题目: 给定一个包括 n 个整数的数组 nums 和 一个目标值 target。找出 nums 中的三个整数,使得它们的和与 target 最接近。...与 target 最接近的三个的和为 2. (-1 + 2 + 1 = 2). 题目分析: 这一题,基本上之和都有一大家子了。...两之和;三之和;最接近的三之和……相信上一题(三之和)大家多少还有些印象,没有的自行去复习噢。...这里思路如下: 列表排序,sort()方法 一层循环,固定一个(索引记为 i),在这个数之后,记 l 指向第一个,r 指向最后一个 如果nums[i]+nums[l]+nums[l+1]大于目标值...) 执行完所有循环,则所有可能的答案都在目标列表中,对列表按照与目标值之差的绝对值排序,返回第一个(即差最小,也即最接近的三之和) 代码如下: ?

58340

【LeetCode04】最接近的三之和

找出 nums 中的三个整数,使得它们的和与 target 最接近。返回这三个的和。假定每组输入只存在唯一答案。...与 target 最接近的三个的和为 2. (-1 + 2 + 1 = 2). 先思考一下,后面我会给出一个解题思路~? ? 图来自网络 这道题目,用到了一种算法——双指针算法。...时候,就在nums[2:] 后的空间,即在 [1,2] 中进行双指针遍历: 左指针从最左端开始,即 left = i+1 右指针从最右端开始,即 right = len(nums)-1 3 )如果三之和...( nums[i]+nums[left]+nums[right] )就是target,马上返回结果; 如果三之和 小于target,因为数组是排好序的,所以左指针向右移动1个位置,增大三之和; 如果三之和...大于target,右指针向左移动1个位置,减小三之和; 一直迭代,直到left>right 4 )不断迭代2-3步,不断缩小三之和与目标target的差值。

43020

【LeetCode】(No.016)最接近的三之和

---- NO.16 最接近的三之和 一、写在前面 刷题已经断更好几天了,主要原因最近参加了机器学习的比赛忙着处理特征值优化自己的模型,刷题其实挺耗时间的,而且看得人也不是很多,所以最近自己也没有怎样刷题...LeetCode 第十五题三之和传输门:【LeetCode】(No.015)三之和今天给大家分享的是LeetCode 第十六题:最接近的三之和,为面试而生,期待你的加入。...找出 nums 中的三个整数,使得它们的和与 target 最接近。返回这三个的和。假定每组输入只存在唯一答案。...例如,给定数组 nums = [-1,2,1,-4], 和 target = 1.与 target 最接近的三个的和为 2. (-1 + 2 + 1 = 2)....三、 分析 这个题目跟之前的两之和,三之和都是相似的,因此代码也是在三之和的基础上修改的。

30210
领券