LeetCode #15 3Sum
来源:互联网 发布:java调用ireport报表 编辑:程序博客网 时间:2024/06/01 09:06
Description
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.
Analysis
题目难度为:Medium
本题思路,取出a,然后将剩下的n-1个数和b+c变为2Sum问题。同理也适用于4Sum问题等
Code(c++)
class Solution {public: vector<vector<int>> threeSum(vector<int>& nums) { vector<vector<int>> res; sort(nums.begin(), nums.end()); for (int k = 0; k < nums.size(); ++k) { if (nums[k] > 0) break; if (k > 0 && nums[k] == nums[k - 1]) continue; int target = 0 - nums[k]; int i = k + 1, j = nums.size() - 1; while (i < j) { if (nums[i] + nums[j] == target) { res.push_back({nums[k], nums[i], nums[j]}); while (i < j && nums[i] == nums[i + 1]) ++i; while (i < j && nums[j] == nums[j - 1]) --j; ++i; --j; } else if (nums[i] + nums[j] < target) ++i; else --j; } } return res; }};
0 0
- Leetcode 15 3Sum
- LeetCode 15: 3Sum
- leetcode 15 3Sum
- [leetcode 15] 3Sum
- Leetcode【15】:3Sum
- [leetcode 15] 3Sum
- [Leetcode] 15 - 3Sum
- leetcode.15-----------3Sum
- leetcode 15 3Sum
- leetcode-15 3Sum
- 3Sum - LeetCode 15
- Leetcode #15 3 Sum
- LeetCode---(15) 3 sum
- LeetCode 15 - 3Sum
- leetcode-15 3sum
- leetcode 15 -- 3Sum
- Leetcode[15]-3Sum
- LeetCode 15: 3 Sum
- 循环队列顺序储存
- Django开发环境与生产环境的设置
- 问题 D: 有解吗?
- JSON 数据解析
- Linux进程管理常用命令
- LeetCode #15 3Sum
- java 中的引用
- img加载图片错误的时候,如何给个默认图?
- ITK图像读写及显示
- 数据压缩实验2
- IDR机制
- 学习structs2第一天
- MAC下PHP开发环境教程
- 重构-ExtractClass