题解 | #数组中相加和为0的三元组#
数组中相加和为0的三元组
http://www.nowcoder.com/practice/345e2ed5f81d4017bbb8cc6055b0b711
暴力方法 O(n^3)
class Solution { public: vector<vector<int> > threeSum(vector<int> &num) { vector<vector<int> > res; if(num.size() < 3) return res; for(int i = 0; i < num.size() - 2; i++) { for(int j = i + 1; j < num.size() - 1; j++) { for(int k = j + 1; k < num.size(); k++) { vector<int> ans; auto x = num[i] + num[j]; if(num[k] == -x) { ans.push_back(num[i]); ans.push_back(num[j]); ans.push_back(num[k]); } if(ans.size()) { sort(ans.begin(), ans.end()); res.push_back(ans); } } } } sort(res.begin(), res.end()); res.erase( unique( res.begin(), res.end()), res.end() ); return res; } };