leetcode973—最接近原点的 K 个点
发布日期:2021-05-08 11:10:49 浏览次数:17 分类:精选文章

本文共 739 字,大约阅读时间需要 2 分钟。

方法一 排序

使用sort函数,自定义排序类型;

class Solution {   public:    vector
> kClosest(vector
>& points, int K) { sort(points.begin(), points.end(), [](const vector
& u, const vector
& v) { return u[0] * u[0] + u[1] * u[1] < v[0] * v[0] + v[1] * v[1];//匿名函数,自定义排序方式 }); return { points.begin(), points.begin() + K}; }};/**排序函数sort() 头文件: #include
, 第三个参数可自定义的比较函数指针默认升序 * bool cmp( const Type1 &a, const Type2 &b) * 比较a和b,如果想要升序则让 a < b,返回true; * 如果想要降序则让 a > b,返回true; * 同样地,可以比较ab的其他参数来确认,例如本题采用a,b代表的点的平方和升序排列; * 第三个参数采用匿名函数的形式构建(函数语法): [外部变量访问方式说明符] (参数) mutable noexcept/throw() -> 返回值类型 { 函数体; }; */

匿名函数:

方法二 优先队列

上一篇:知识点链接汇总
下一篇:力扣127

发表评论

最新留言

逛到本站,mark一下
[***.202.152.39]2025年03月21日 07时04分46秒