博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
leetCode 15. 3Sum
阅读量:7010 次
发布时间:2019-06-28

本文共 1642 字,大约阅读时间需要 5 分钟。

Given an array nums of n integers, are there elements abc in nums such that a + b + c = 0? Find all unique triplets in the array which gives the sum of zero.

Note:

The solution set must not contain duplicate triplets.

Example:

Given array nums = [-1, 0, 1, 2, -1, -4],A solution set is:[  [-1, 0, 1],  [-1, -1, 2]] 有空没空也得记得刷道题啊,不然乍一敲代码手生的很啊。
1 class Solution { 2     public List
> threeSum(int[] nums) { 3 List
> list = new ArrayList<>();//存放List
数组元素 4 Arrays.sort(nums); 5 int length = nums.length; 6 for (int i = 0; i < length-2; i++) { 7 if (i != 0 && nums[i] == nums[i-1]) 8 continue; 9 for (int j = i+1; j < length-1; j++) {10 if (nums[i] + nums[j] + nums[length-1] < 0)11 continue;12 int th = nums[i] + nums[j];13 if(th > 0)//确保nums[i]+nums[j] < 014 continue;15 16 for (int i1 = nums.length - 1; i1 > j; i1--) {17 if (nums[i1] + th == 0) {18 if (list.size() > 0) {19 List
l = list.get(list.size()-1);20 if (l.get(0) == nums[i] && l.get(1) == nums[j] && l.get(2) == nums[i1]) {21 break;22 }23 }24 ArrayList
listElem = new ArrayList<>();25 listElem.add(nums[i]);26 listElem.add(nums[j]);27 listElem.add(nums[i1]);28 list.add(listElem);29 break;30 }31 else if (nums[i1] + th < 0)32 break;33 }34 }35 }36 37 return list;38 }39 }

 

转载于:https://www.cnblogs.com/yfs123456/p/10888385.html

你可能感兴趣的文章
开源 |蚂蚁金服启动分布式中间件开源计划,用于快速构建金融级云原生架构...
查看>>
Go语言之基准测试
查看>>
win10_x64更新错误解决: 安装一些更新时出现问题,但我们稍后会重试。如果持续出现这些问题,并且你想要搜索Web或联系支持人员以获取相关信息,以下信息可能会对你有帮助:...
查看>>
keepalived vrrp_script的一些实例配置
查看>>
《数字逻辑设计与计算机组成》一 3.4 减法器
查看>>
Chrome浏览器也开启Material Design风格
查看>>
《系统分析与设计方法及实践》一2.1 软件生命周期
查看>>
Oracle Logminer 日志挖掘
查看>>
印媒:全球科技巨头竞相角逐印度“智能城市”项目
查看>>
《Servlet和JSP学习指南》一2.2 隐藏域
查看>>
[干货]基础机器学习算法
查看>>
12月14日全球域名商解析量22强:爱名网升至十七
查看>>
全球域名商解析新增量20强:中国占据7个席位
查看>>
在python中获取当前位置所在的行号和函数名
查看>>
如何导出PPT内的所有图片做素材(IT实用技巧)
查看>>
定时自动启动任务crontab命令用法
查看>>
Eclipse工具安装
查看>>
低成本和高性能的MySQL云数据库的实现
查看>>
IIS操作注册表
查看>>
htmlunit入门
查看>>