15. 3Sum
来源:互联网 发布:unity性能优化 编辑:程序博客网 时间:2024/06/04 19:24
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.
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> > threeSum(vector<int> &num) { vector<vector<int> > res; std::sort(num.begin(), num.end()); for (int i = 0; i < num.size(); i++) { int target = -num[i]; int front = i + 1; int back = num.size() - 1; while (front < back) { int sum = num[front] + num[back]; // Finding answer which start from number num[i] if (sum < target) front++; else if (sum > target) back--; else { vector<int> triplet(3, 0); triplet[0] = num[i]; triplet[1] = num[front]; triplet[2] = num[back]; res.push_back(triplet); // Processing duplicates of Number 2 // Rolling the front pointer to the next different number forwards while (front < back && num[front] == triplet[1]) front++; // Processing duplicates of Number 3 // Rolling the back pointer to the next different number backwards while (front < back && num[back] == triplet[2]) back--; } } // Processing duplicates of Number 1 while (i + 1 < num.size() && num[i + 1] == num[i]) i++; } return res; }};
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
- Matlab和Octave在计算机视觉和图像处理领域的函数的对比
- SSL_1063_统计数字_hash
- 注意事项
- 算法提高 求最大值
- 截至20161210香港创业板股票代码和名称
- 15. 3Sum
- 文件与数据流处理总结(思维导图)
- ElasticSearch所使用的倒排索引的思想和使用场景
- linux下eclipse的界面紧凑调整方法
- React-Native-Remote-Update - 使用React-Native实现app热更新的一次实践
- mongod 学习资源汇总
- yii在nginx中实现url美化
- 架构设计:系统存储(11)——MySQL主从方案业务连接透明化(上)
- php数据库操作小项目中文乱码