来看一段重写的使用了 sort() 排序的代码
class Solution {
public:
bool cmp(pair<int, int>a, pair<int, int>b) {
return a.second < b.second;
}
vector<vector<int>> kClosest(vector<vector<int>>& points, int K) {
vector<pair<int, int>> res;
for (int i = 0; i < points.size(); i++) {
res.emplace_back(make_pair(i, pow(points[i][0], 2) + pow(points[i][1], 2)));
}
sort(res.begin(), res.end(), cmp);
vector<vector<int>> ans;
for (int i = 0; i < K; i++) {
ans.emplace_back(points[res[i].first]);
}
return ans;
}
};
看上去没毛病吧?
我们试着在 leetcode 提交一下
好家伙,咋编译出错了呢?
查了一下 sort() 的重写,