leetcode---3Sum
来源:互联网 发布:狂发短信软件 编辑:程序博客网 时间:2024/06/06 07:16
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)
class Solution {public: vector<vector<int>> ans; vector<vector<int>> threeSum(vector<int>& nums) { if(nums.size() < 3) return ans; sort(nums.begin(), nums.end()); int n = nums.size(); for(int i=0; i<n-2; i++) { if(i>0 && nums[i] == nums[i-1]) continue; int l = i + 1; int r = n - 1; while(l < r) { int s = nums[i] + nums[l] + nums[r]; if(s == 0) { vector<int> tmp; tmp.push_back(nums[i]); tmp.push_back(nums[l]); tmp.push_back(nums[r]); ans.push_back(tmp); while(l<r && nums[l] == nums[l+1]) l++; while(l<r && nums[r] == nums[r-1]) r--; l++; r--; } else if(s < 0) l++; else r--; } } return ans; }};
0 0
- 【Leetcode】3Sum (Sum)
- Leetcode:2Sum,3Sum
- 【Leetcode】3Sum Closest (Sum)
- leetcode 2 sum 3sum 4sum
- Leetcode 2SUM-3SUM-4SUM
- Leetcode-2sum,3sum,4sum
- leetcode 2 sum & 3 sum & 4 sum
- [LeetCode] 2Sum, 3Sum, 4Sum, 3SUm closet
- [LeetCode] K sum(2Sum、3Sum、4Sum)
- leetcode--sum集合:2sum,3sum,4sum
- leetcode --- 2 sum , 3 sum , 4 sum , k sum problem
- LeetCode: 3Sum
- LeetCode: 3 Sum Closest
- leetcode - 3 Sum
- leetcode - 3 sum closest
- leetcode 3Sum
- leetcode 3Sum Closest
- LeetCode: 3Sum
- Spark中组件Mllib的学习26之逻辑回归-简单数据集,带预测
- MVC入门经典——深入理解原理
- DNS基础知识
- C++实验6—字符串操作
- Python学习笔记(二)在线用pip下载第三方包
- leetcode---3Sum
- codeforces #300 A. Cutting Banner
- Linux学习笔记一(Linux常用命令1)
- 动态规划算法介绍:
- HDU-1116-Play on Words
- H.265优化问题
- HDU 2089 数位dp水题 统计区间中不包含62 和 4 的个数
- jQery命名空间
- Spark中组件Mllib的学习27之逻辑回归-多元逻辑回归,较大数据集,带预测准确度计算