CODE 116: 3Sum
来源:互联网 发布:优化路政许可服务 编辑:程序博客网 时间:2024/04/30 00:06
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:
- Elements in a triplet (a,b,c) must be in non-descending order. (ie, a ≤ b ≤ c)
- 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)
public ArrayList<ArrayList<Integer>> threeSum(int[] num) {// IMPORTANT: Please reset any member data you declared, as// the same Solution instance will be reused for each test case.if (num.length <= 2) {ArrayList<ArrayList<Integer>> results = new ArrayList<ArrayList<Integer>>();return results;}ArrayList<ArrayList<Integer>> results = new ArrayList<ArrayList<Integer>>();Arrays.sort(num);for (int i = 0; i < num.length - 2; i++) {int sum = num[i];int start = i + 1;int end = num.length - 1;while (start < end) {if (num[start] + num[end] > 0 - sum) {while (start < end && num[end - 1] == num[end]) {end--;}end--;} else if (num[start] + num[end] < 0 - sum) {while (start < end && num[start + 1] == num[start]) {start++;}start++;} else {ArrayList<Integer> result = new ArrayList<Integer>();result.add(num[i]);result.add(num[start]);result.add(num[end]);if (!results.contains(result)) {results.add(result);}start++;end--;}}while (i < num.length - 2 && num[i + 1] == num[i]) {i++;}}return results;}
- CODE 116: 3Sum
- CODE 115: 3Sum Closest
- [leet code] 3Sum Closest
- leetcode 日经贴,python code - 3sum
- Leet Code Medium 15 3Sum
- Leet Code Medium 16 3Sum Closest
- leet code. 15. 3Sum (暴力???)
- CODE 21: Path Sum
- CODE 94: Combination Sum
- CODE 114: 4Sum
- CODE 129: Two Sum
- [leet code] Path Sum
- [leet code] Combination Sum
- code review sum
- [Leet Code] 4sum
- Lette Code Two Sum
- path-sum Java code
- path-sum Java code
- OCP-1Z0-052-V8.02-96题
- 背景消减法_OpenCV_详解
- SQL优化案例:EXP的优化(Fuyuncat)
- Python 实用技巧(上)
- 关于大数据技术的再思考
- CODE 116: 3Sum
- 函数帧和可变参数和内存对齐
- C++第11周项目5——歌手大奖赛计分
- 去掉android的屏幕上的titlebar
- Unusual Memory Management Situations
- 正则表达式
- memset的实现及改进
- C++ 友元函数模板 和 友元类模板 和 顺序栈
- 小波学习之三(多孔算法与MATLAB swt剖析)