当前位置: 首页 > news >正文

Golang | Leetcode Golang题解之第18题四数之和

题目:

题解:

func fourSum(nums []int, target int) (quadruplets [][]int) {sort.Ints(nums)n := len(nums)for i := 0; i < n-3 && nums[i]+nums[i+1]+nums[i+2]+nums[i+3] <= target; i++ {if i > 0 && nums[i] == nums[i-1] || nums[i]+nums[n-3]+nums[n-2]+nums[n-1] < target {continue}for j := i + 1; j < n-2 && nums[i]+nums[j]+nums[j+1]+nums[j+2] <= target; j++ {if j > i+1 && nums[j] == nums[j-1] || nums[i]+nums[j]+nums[n-2]+nums[n-1] < target {continue}for left, right := j+1, n-1; left < right; {if sum := nums[i] + nums[j] + nums[left] + nums[right]; sum == target {quadruplets = append(quadruplets, []int{nums[i], nums[j], nums[left], nums[right]})for left++; left < right && nums[left] == nums[left-1]; left++ {}for right--; left < right && nums[right] == nums[right+1]; right-- {}} else if sum < target {left++} else {right--}}}}return
}
http://www.lryc.cn/news/334674.html

相关文章:

  • 自动驾驶中的传感器融合算法:卡尔曼滤波器和扩展卡尔曼滤波器
  • 基于ssm的星空游戏购买下载平台的设计与实现论文
  • DSOX6004A是德科技DSOX6004A示波器
  • golang 使用 cipher、aes 实现 oauth2 验证
  • LLMs之FreeGPT35:FreeGPT35的简介、安装和使用方法、案例应用之详细攻略
  • 【力扣一刷】代码随想录day32(贪心算法part2:122.买卖股票的最佳时机II、55. 跳跃游戏、45.跳跃游戏II )
  • 安卓远离手机app
  • yolov5旋转目标检测遥感图像检测-无人机旋转目标检测(代码和原理)
  • 云手机提供私域流量变现方案
  • 树的基本概念与二叉树
  • 什么是物理服务器?
  • 数据结构:详解【树和二叉树】
  • “成像光谱遥感技术中的AI革命:ChatGPT在遥感领域中的应用“
  • semhear环境sox
  • 如何快速开启一个项目-ApiHug - API design Copilot
  • 从用友U9到钉钉通过接口配置打通数据
  • PyQt qrc2py 使用PowerShell将qrc文件转为py文件并且将导入模块PyQt或PySide转换为qtpy模块开箱即用
  • phpstorm设置头部注释和自定义注释内容
  • 【数据分析面试】10. 计算平均通勤时间(SQL:timestampdiff() 和datediff()区别)
  • 2024年150道高频Java面试题(二十二)
  • 如何使用校园网——Win10笔记本,台式机互开热点
  • c#:简洁实现if-else语句
  • 金融贷款批准预测项目
  • FR中隐藏系统管理--用户管理中 表格中每条数据中的编辑按钮,删除按钮
  • 函数重载和引用【C++】
  • rust-tokio发布考古
  • 3D医疗图像配准 | 基于Vision-Transformer+Pytorch实现的3D医疗图像配准算法
  • 设计模式(18):状态模式
  • 如果用大模型考公,kimi、通义千问谁能考高分?
  • 如何在Java中创建对象输入流