题解 | #三数之和#
class Solution {
public:
vector<vector<int> > threeSum(vector<int>& num) {
vector<vector<int>> myTwoVec;
set<vector<int>> myset;
for (int i = 0; i < num.size(); i++) {
int twosum = 0 - num[i];
map<int, int> mapA{};
for (int j = i + 1; j < num.size(); j++) {
if (!mapA[twosum - num[j]])
mapA[num[j]] = 1;
else {
vector<int> mytempvec{num[i], twosum - num[j], num[j]};
sort(mytempvec.begin(), mytempvec.end());
myset.insert(mytempvec);
}
}
}
for (auto i : myset)
myTwoVec.push_back(i);
return myTwoVec;
}
};
set去重+自动排序

