【leetcode-python】最接近的三数之和

ops/2024/12/23 1:09:32/

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

返回这三个数的和。

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

示例 1:

输入:nums = [-1,2,1,-4], target = 1
输出:2
解释:与 target 最接近的和是 2 (-1 + 2 + 1 = 2)。

示例 2:

输入:nums = [0,0,0], target = 1
输出:0
解释:与 target 最接近的和是 0(0 + 0 + 0 = 0)。

提示:

  • 3 <= nums.length <= 1000
  • -1000 <= nums[i] <= 1000
  • -104 <= target <= 104

典型的双指针问题

python">class Solution:def threeSumClosest(self, nums: List[int], target: int) -> int:nums.sort()####小到大排序resultmax = float('inf')tempresult = resultmax length = len(nums)if length < 4:return sum(nums)else:for i03 in range(0,length ):    i01 = i03 + 1  i02 = length - 1 ###本次最小的          while i01 < i02:result = nums[i01] + nums[i02] + nums[i03]if abs(result - target) < abs(tempresult- target) :###目前距离全局最小,更新tempresulttempresult = resultif result == target:###目前tempresult等于目标return tempresult###目前result小elif result < target:###偏小i01 = i01 + 1else:##偏大i02 = i02-1return tempresult


http://www.ppmy.cn/ops/112451.html

相关文章

ClickHouse的安装配置+DBeaver远程连接

1、clickhouse的下载&#xff1a; 先去clickhouse官网进行下载&#xff0c;继续往下翻找文档&#xff0c;将DBeaver也下载下来 下载地址&#xff1a;https://packages.clickhouse.com/rpm/stable/ 下载这个四个rpm包 2、上传rmp文件到Linux中 自己创建的一个clickhouse-ins…

IntelliJ IDEA 创建 HTML 项目教程

传送门 IntelliJ IDEA 是 JetBrains 提供的一款强大且多功能的集成开发环境&#xff08;IDE&#xff09;&#xff0c;不仅可以用于 Java 开发&#xff0c;还支持多种其他编程语言和技术&#xff0c;包括 HTML、CSS 和 JavaScript 等前端开发工具。本文将带你逐步了解如何使用 …

计算机网络:概述 - 性能指标

目录 一. 速率 二. 带宽 三. 吞吐量 四. 时延 五. 时延带宽积 六. 往返时间RTT 七. 利用率 八. 丢包率 此博客介绍计算机网络中的性能指标&#xff0c;性能指标从不同的角度来度量计算机网络的性能。下面介绍几个常用的性能指标&#xff1a; 一. 速率…

Kubernetes 持续集成与交付(CI/CD)

Kubernetes 持续集成与交付&#xff08;CI/CD&#xff09;详解 Kubernetes 是目前主流的容器编排平台&#xff0c;而在 DevOps 的实践中&#xff0c;持续集成与持续交付&#xff08;CI/CD&#xff09;是自动化软件开发与运维的核心环节。Kubernetes 与 CI/CD 的结合&#xff0…

C++对象拷贝时的优化编译

在现代编译器中&#xff0c;当我们在 C中进行对象的拷贝操作时&#xff0c;编译器并非只是机械地执行逐字节的复制。相反&#xff0c;它会进行优化&#xff0c;避免不必要的拷贝构造等等&#xff0c;这种优化包括“返回值优化”&#xff08;RVO&#xff09;&#xff0c;“拷贝省…

react hooks--useState

概述 useState 可以使函数组件像类组件一样拥有 state&#xff0c;也就说明函数组件可以通过 useState 改变 UI 视图。那么 useState 到底应该如何使用&#xff0c;底层又是怎么运作的呢&#xff0c;首先一起看一下 useState 。 问题&#xff1a;Hook 是什么? 一个 Hook 就是…

Leetcode—1137. 第 N 个泰波那契数【简单】

2024每日刷题&#xff08;160&#xff09; Leetcode—1137. 第 N 个泰波那契数 记忆化搜索实现代码 class Solution { public:int tribonacci(int n) {int zero 0;int one 1;int two 1;if(n 0) {return zero;}if(n 1) {return one;}if(n 2) {return two;}int ans 0;fo…

什么是vue

什么是vue 文章目录 什么是vueVue是一套用于构建用户界面的渐进式JavaScript框架vue主要功能&#xff1a;与其他框架不同的是&#xff1a;小总结&#xff1a;什么是Vue Vue是一套用于构建用户界面的渐进式JavaScript框架 与其他大型框架不同的是Vue被设计为可以自底向上逐层应…