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

力扣-15.三数之和

题目链接

15.三数之和

class Solution {public List<List<Integer>> threeSum(int[] nums) {List<List<Integer>> res = new ArrayList<>();Arrays.sort(nums);for (int i = 0; i < nums.length - 2; i++) {if (nums[i] > 0)break;if (i > 0 && nums[i] == nums[i - 1])continue;int left = i + 1;int right = nums.length - 1;while (left < right) {int sum = nums[i] + nums[left] + nums[right];if (sum > 0) {right--;} else if (sum < 0) {left++;} else {res.add(Arrays.asList(nums[i], nums[left], nums[right]));while (left < right && nums[left] == nums[left + 1]) {left++;}while (left < right && nums[right] == nums[right - 1]) {right--;}left++;right--;}}}return res;}
}

小结:排序+双指针,注意去重和剪枝操作,还有Arrays.sort()Arrays.asList()的使用。

http://www.dtcms.com/a/318570.html

相关文章:

  • 五、Istio管理网格外部服务
  • 快速准确的千兆像素病理图像分类,采用分层蒸馏多实例学习(每日一文)
  • ssm复习
  • 【RabbitMQ】高级特性—死信队列详解
  • 560. 和为 K 的子数组 - 前缀和思想
  • MATLAB下载教程MATLAB R2025a 保姆级安装步骤(附安装包)
  • 数据结构——双向链表及makefile
  • c++ 中 原子锁、互斥锁、自旋锁的区别和详细用法
  • 大模型 + 垂直场景:搜索 / 推荐 / 营销 / 客服领域开发
  • 【Redis】Linux部署redis 7集群部署三主三从、ACL新建用户及密码(图文教程)
  • ​ubuntu22.04系统入门 (四)linux入门命令 权限管理、ACL权限、管道与重定向
  • 集合数据类型Map和Set
  • pcl手动直通滤波
  • LeetCode每日一题,8-6
  • 基于Simulink/MWORKS的文字与开关量混合传输系统设计
  • 流式输出 vs 非流式输出
  • SpringBoot设置跨域的几种方式
  • 互斥锁与条件变量
  • 每日五个pyecharts可视化图表-bars(5)
  • Java语言基础深度面试题
  • List、ArrayList 与顺序表
  • 智能学号抽取系统 V5.7.4 更新报告:修复关键同步漏洞,体验更臻完美
  • Spring Boot 项目代码笔记
  • 三、Istio流量治理(二)
  • 文件权限合规扫描针对香港服务器安全基线的实施流程
  • 《零基础入门AI:深度学习入门(从PyTorch安装到自动微分)》
  • Anthropic于本周一推出了其旗舰模型的升级版Claude Opus 4.1
  • 《第十三篇》深入解析 `kb_api.py`:知识库的创建、删除与查询接口
  • 基于Vue 3 的智能支付二维码弹窗组件设计与实现
  • Effective C++ 条款26: 尽可能延后变量定义式的出现时间