15. 3Sum
来源:互联网 发布:java unix时间戳 编辑:程序博客网 时间:2024/05/16 01:13
Given an array S of n integers, are there elements a, b, c in S 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.
For example, given array S = [-1, 0, 1, 2, -1, -4],A solution set is:[ [-1, 0, 1], [-1, -1, 2]]
2sum的升级版 想办法转化为2sum就可以了
第二遍 做出来了
答案有几点值得学习
public List<List<Integer>> threeSum(int[] nums) { Arrays.sort(nums); List<List<Integer>> list = new ArrayList<List<Integer>>(); for(int i = 0; i < nums.length; i++) { if(i > 0 && (nums[i] == nums[i-1])) continue; // avoid duplicates for(int j = i+1, k = nums.length-1; j<k;) { if(nums[i] + nums[j] + nums[k] == 0) { list.add(Arrays.asList(nums[i],nums[j],nums[k])); j++;k--; while((j < k) && (nums[j] == nums[j-1]))j++;// avoid duplicates while((j < k) && (nums[k] == nums[k+1]))k--;// avoid duplicates }else if(nums[i] + nums[j] + nums[k] > 0) k--; else j++; } } return list;}
阅读全文
0 0
- 15. 3Sum && 16 sum closet && 18 4sum
- 15. 3Sum 和 18. 4Sum
- 1. Two Sum&15. 3Sum
- LeetCode 15. 3Sum
- LeetCode --- 15. 3Sum
- [Leetcode] 15. 3Sum
- 【LeetCode】15. 3Sum
- 15. 3Sum
- 【leetcode】15. 3sum
- 【leetcode】15. 3Sum
- 15. 3Sum
- [leetcode] 15. 3Sum
- 15. 3Sum
- 15. 3Sum
- 15. 3Sum
- 15. 3Sum
- 15. 3Sum
- leetcode 15. 3Sum
- 主从复制和读写分离
- 2017中国HPC TOP100:AI成最大赢家,浪潮和老黄都笑了
- 例题7-10 编辑书稿(Editing a Book, UVa 11212)
- 安卓自定义组合式View 加减
- ofbiz实战3——创建booking项目首页
- 15. 3Sum
- Express、Socket.io开发一个简易的聊天系统
- Bootstrap中的下拉菜单组件
- GitHub上README.md教程
- 用MATLAB实现FR共轭梯度法求解实例
- linux压缩命令总结
- 设计模式之模板方法
- 递归 与 尾递归 详解
- 提高代码阅读能力的7种方法