Leetcode16.最接近的三数之和

问题描述:

难度:中等

给你一个长度为 n 的整数数组 nums 和 一个目标值 target。请你从 nums 中选出三个整数,使它们的和与 target 最接近。

返回这三个数的和。

假定每组输入只存在恰好一个解。

 

 

题解:

代码:

 

 

这道题就是一道典型的双指针问题。首先要做的就是将数组进行排序,在排序之后才方便做接下来的操作。

首先就是遍历,遍历的范围从数组开端一直到数组大小-2的位置。这是由于要预留左右两个指针的位置。左右指针依次指向空余位置的开头与结尾处,开头与结尾处所指向的数的和要与目前最近的和相比较,最小的将会被保留。然后再进行左右指针的操作,如果三数之和比目标数大了,则说明数组中较大的一侧需要作出相应的调整,故right--,反之则是left++。

 

posted @   USTC_Freeman  阅读(52)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示