Golang | Leetcode Golang题解之第373题查找和最小的K对数字

devtools/2024/9/18 20:58:03/ 标签: Golang, Leetcode, 题解

题目:

题解

func kSmallestPairs(nums1, nums2 []int, k int) (ans [][]int) {m, n := len(nums1), len(nums2)// 二分查找第 k 小的数对和left, right := nums1[0]+nums2[0], nums1[m-1]+nums2[n-1]+1pairSum := left + sort.Search(right-left, func(sum int) bool {sum += leftcnt := 0i, j := 0, n-1for i < m && j >= 0 {if nums1[i]+nums2[j] > sum {j--} else {cnt += j + 1i++}}return cnt >= k})// 找数对和小于 pairSum 的数对i := n - 1for _, num1 := range nums1 {for i >= 0 && num1+nums2[i] >= pairSum {i--}for _, num2 := range nums2[:i+1] {ans = append(ans, []int{num1, num2})if len(ans) == k {return}}}// 找数对和等于 pairSum 的数对i = n - 1for _, num1 := range nums1 {for i >= 0 && num1+nums2[i] > pairSum {i--}for j := i; j >= 0 && num1+nums2[j] == pairSum; j-- {ans = append(ans, []int{num1, nums2[j]})if len(ans) == k {return}}}return
}

http://www.ppmy.cn/devtools/100504.html

相关文章

【云原生】企业级WEB应用服务器TOMCAT

一、实验环境 1、虚拟机版本 RHEL9.4 2、主机 主机名称IP地址tomcat172.25.254.100tomcat-node1172.25.254.10tomcat-node2172.25.254.20 3、基础配置 三台主机的防火墙和 selinux 都永久关闭&#xff0c;网卡为 eth0&#xff0c;本地仓库已配置&#xff0c;开机自动挂载…

深度学习学习经验——深度学习名词字典

深度学习名词字典 1. 张量&#xff08;Tensor&#xff09;2. 神经网络&#xff08;Neural Network&#xff09;3. 损失函数&#xff08;Loss Function&#xff09;4. 优化器&#xff08;Optimizer&#xff09;5. 激活函数&#xff08;Activation Function&#xff09;6. 前向传…

【C++指南】类和对象(一):类和对象的定义和使用 基础讲解

&#x1f493; 博客主页&#xff1a;倔强的石头的CSDN主页 &#x1f4dd;Gitee主页&#xff1a;倔强的石头的gitee主页 ⏩ 文章专栏&#xff1a;《C指南》 期待您的关注 目录 引言 文章思路 一、类的定义 1.类的定义 2.类的访问限定符 3.class与struct的使用区别 4.类域…

【Python】自然语言处理(NLP)技术简介

紧紧握着 青花信物 信守着承诺 离别总在 失意中度过 记忆油膏 反复涂抹 无法愈合的伤口 你的回头 划伤了沉默 &#x1f3b5; 周传雄《青花》 自然语言处理&#xff08;NLP&#xff09;技术是一种使计算机能够理解和处理人类自然语言的技术。以下是一些NLP…

预训练语言模型PLM(课程笔记)

一&#xff1a;分为两种范式 1. Feature-based 预训练的模型参数&#xff08;word-enbeddings&#xff09;作为下游任务的输入&#xff0c;不更新预训练参数。 代表&#xff1a;word2vec&#xff0c;ELMO 2. Fine-tuning 在下游任务时对模型参数进行更新 代表&#xff1a;BERT&…

【数学建模】层次分析法

在数学建模问题求解中什么时候用到层次分析法 在数学建模问题求解中&#xff0c;层次分析法&#xff08;Analytic Hierarchy Process, AHP&#xff09;通常用于解决评价类问题&#xff0c;特别是在需要从多个备选方案中选择最佳方案时。以下是一些典型的应用场景&#xff1a; …

3.5、matlab打开显示保存点云文件(.ply/.pcd)以及经典点云模型数据

1、点云数据简介 点云数据是三维空间中由大量二维点坐标组成的数据集合。每个点代表空间中的一个坐标点,可以包含有关该点的颜色、法向量、强度值等额外信息。点云数据可以通过激光扫描、结构光扫描、摄像机捕捉等方式获取,广泛应用于计算机视觉、机器人视觉、地图建模、三维…

伏图-电子散热模块介绍和路由器自然散热仿真应用

一、背景介绍 随着电子行业的迅猛发展&#xff0c;电子设备的功能日趋复杂且集成度显著提升&#xff0c;散热问题作为制约设备性能、可靠性及使用寿命的关键因素日益凸显。为此&#xff0c;业界对更精确、高效的散热分析工具的需求愈发迫切&#xff0c;以期满足不断升级的电子…

【计算机网络】名词解释--网络专有名词详解

在网络通信中&#xff0c;有许多专业术语和概念&#xff0c;它们共同构成了网络通信的基础。以下是一些常见的网络术语及其定义和相互之间的关系&#xff1a; 一、网络基础 1.1 电路交换&#xff1a;电路交换是一种在数据传输前建立专用通信路径的通信方式。在通信开始前&…

贪心算法---跳跃游戏(2)

题目&#xff1a; 给定一个长度为 n 的 0 索引整数数组 nums。初始位置为 nums[0]。 每个元素 nums[i] 表示从索引 i 向前跳转的最大长度。换句话说&#xff0c;如果你在 nums[i] 处&#xff0c;你可以跳转到任意 nums[i j] 处: 0 < j < nums[i] i j < n 返回到…

【蓝桥杯集训100题】scratch游泳时长 蓝桥杯scratch比赛专项预测编程题 集训模拟练习题第27题

目录 scratch游泳时长 一、题目要求 编程实现 二、案例分析 1、角色分析 2、背景分析 3、前期准备 三、解题思路 1、思路分析 2、详细过程 四、程序编写 五、考点分析 六、推荐资料 1、入门基础 2、蓝桥杯比赛 3、考级资料 4、视频课程 5、python资料 scratc…

【图论】Tarjan算法(强连通分量)

一、Tarjan算法简介 Tarjan算法是一种由美国计算机科学家罗伯特塔杨&#xff08;Robert Tarjan&#xff09;提出的求解有向图强连通分量的线性时间的算法。 二、强连通分量的概念 在有向图 G G G 中&#xff0c;如果任意两个不同的顶点相互可达&#xff0c;则称该有向图是强…

每期一个小窍门 golang中 CGO_ENABLED 含义

转载 CGO_ENABLED是一个环境变量&#xff0c;用于控制Go编译器是否启用CGO&#xff08;C语言调用Go函数&#xff09;功能。当CGO_ENABLED0时&#xff0c;表示禁用CGO功能。 编译时使用CGO_ENABLED0会导致编译速度较慢的原因有以下几点&#xff1a; 编译器需要额外的时间来检…

哈夫曼文件压缩测试报告

项目背景 一、技术需求背景 数据存储与传输压力&#xff1a;随着信息技术的迅猛发展&#xff0c;人们需要存储和传输大量的数据&#xff0c;如文档、图片、音频、视频等。这些数据占用大量的存储空间和传输带宽&#xff0c;为了更高效地利用存储资源和降低传输成本&#xff0…

力扣 128. 最长连续序列

题目描述 我的思路 我的思路比较暴力&#xff0c;就是首先将数组从小到大进行排序&#xff0c;然后再依次遍历判断序列是否连续并时时更新连续序列的最长长度。比如示例1&#xff1a;nums [100, 4, 200, 1, 3, 2]&#xff0c;第一步先将数组进行排序得到sort_nums [1, 2, 3,…

理解运营商和全球网络

目录 理解运营商和全球网络 如何上网 光纤入户 购买设备 配置网络 互联网的发展 引入 国家推动 理解运营商和全球网络 如何上网 光纤入户 也就是俗称的拉网线 将光纤宽带服务直接连接到你家中 光纤是由运营商提供 通过玻璃丝传递光电信号,传进来变成模拟信号,再由调制…

【0101】技术的定位:程序员是这个时代的手艺人

【0101】技术的定位&#xff1a;程序员是这个时代的手艺人 程序员是这个时代的手艺人 by kimmking 有一个段子说&#xff0c;“现在公司格子间里边做PPT的那些人跟100年前踩着缝纫机的纺织女工&#xff0c;没有本质区别”。 我非常认可这个观点&#xff0c;不是贬义&#xf…

发完朋友圈就“退款”?黑神话的玩家是否都是“忠实粉丝”?

​声明&#xff1a;此篇为 ai123.cn 原创文章&#xff0c;转载请标明出处链接&#xff1a;https://ai123.cn/2228.html 《黑神话&#xff1a;悟空》自上线以来&#xff0c;便引发了玩家社区的广泛讨论。游戏的退款现象主要受到了一些技术问题和个人体验差异的影响。部分玩家因遇…

四、Docker使用

1. 快速入门 1.1. Docker背景介绍 Docker是一个开源的平台&#xff0c;用于开发、交付和运行应用程序。它能够在Windows&#xff0c;macOS&#xff0c;Linux计算机上运行&#xff0c;并将某一应用程序及其依赖项打包至一个容器中&#xff0c;这些容器可以在任何支持Docker的环…

智能弹性实践:Kubernetes HPA 与观测云的自定义指标集成

前言 Kubernetes 作为容器编排领域的领导者&#xff0c;已经确立了其在云原生技术中的事实标准地位。其中&#xff0c;Horizontal Pod Autoscaler&#xff08;HPA&#xff09;作为 Kubernetes 的核心组件之一&#xff0c;扮演着至关重要的角色。它赋予了应用程序根据实时工作负…