当前位置: 首页 > news >正文

网站样式有哪些风格中国设计网官网图标

网站样式有哪些风格,中国设计网官网图标,网页设计与制作教程书电子版,直播:英格兰vs法国文章目录1. 题目2. 解题2.1 排序2.2 优先队列2.3 快排思路1. 题目 我们有一个由平面上的点组成的列表 points。需要从中找出 K 个距离原点 (0, 0) 最近的点。 #xff08;这里#xff0c;平面上两点之间的距离是欧几里德距离。#xff09; 你可以按任何顺序返回答案。除了… 文章目录1. 题目2. 解题2.1 排序2.2 优先队列2.3 快排思路1. 题目 我们有一个由平面上的点组成的列表 points。需要从中找出 K 个距离原点 (0, 0) 最近的点。 这里平面上两点之间的距离是欧几里德距离。 你可以按任何顺序返回答案。除了点坐标的顺序之外答案确保是唯一的。 示例 1 输入points [[1,3],[-2,2]], K 1 输出[[-2,2]] 解释 (1, 3) 和原点之间的距离为 sqrt(10) (-2, 2) 和原点之间的距离为 sqrt(8) 由于 sqrt(8) sqrt(10)(-2, 2) 离原点更近。 我们只需要距离原点最近的 K 1 个点所以答案就是 [[-2,2]]。示例 2 输入points [[3,3],[5,-1],[-2,4]], K 2 输出[[3,3],[-2,4]] 答案 [[-2,4],[3,3]] 也会被接受。提示 1 K points.length 10000 -10000 points[i][0] 10000 -10000 points[i][1] 10000来源力扣LeetCode 链接https://leetcode-cn.com/problems/k-closest-points-to-origin 著作权归领扣网络所有。商业转载请联系官方授权非商业转载请注明出处。 2. 解题 类似题目LeetCode 215. 数组中的第K个最大元素快速排序 2.1 排序 class Solution { public:vectorvectorint kClosest(vectorvectorint points, int K) {if(K points.size())return points;sort(points.begin(),points.end(),[](auto a, auto b){return a[0]*a[0]a[1]*a[1] b[0]*b[0]b[1]*b[1];});points.resize(K);return points;} };1772 ms 191.6 MB partial_sort 只对前部分[first,middle)进行排序前部分实现为堆 class Solution { public:vectorvectorint kClosest(vectorvectorint points, int K) {partial_sort(points.begin(), points.begin() K, points.end(), [] (auto a, auto b){return a[0]*a[0]a[1]*a[1] b[0]*b[0]b[1]*b[1]; });points.resize(K);return points;} };1552 ms 148.4 MB 时间复杂度 O(nlogn)O(nlogn)O(nlogn) 2.2 优先队列 维持一个容量为K的大顶堆队列满了后续点比堆顶更接近原点时pop堆顶push当前点 struct cmp{bool operator()(const vectorint a, const vectorint b)const{return a[0]*a[0]a[1]*a[1] b[0]*b[0]b[1]*b[1];//大顶堆} }; class Solution { public:vectorvectorint kClosest(vectorvectorint points, int K) {if(K points.size())return points;priority_queuevectorint, vectorvectorint, cmp q;for(int i 0; i points.size(); i){if(q.size() K)q.push(points[i]);else if(q.top()[0]*q.top()[0]q.top()[1]*q.top()[1] points[i][0]*points[i][0]points[i][1]*points[i][1]){q.pop();q.push(points[i]);}}vectorvectorint ans(q.size());int i 0;while(!q.empty()){ans[i] q.top();q.pop();}return ans;} };时间复杂度 O(nlogK)O(nlogK)O(nlogK) 628 ms 47.5 MB 2.3 快排思路 class Solution { public:vectorvectorint kClosest(vectorvectorint points, int K) {if(K points.size())return points;findkth(points,0,points.size()-1,K);points.resize(K);return points;}int dis(vectorvectorint points, int i){return points[i][0]*points[i][0]points[i][1]*points[i][1];}void findkth(vectorvectorint points,int l, int r, int K){int i l, j r, p dis(points, l);while(i j){while(i j dis(points,j) p)//必须先从右边开始因为选的pivot在左边j--;while(i j dis(points,i) p)i;swap(points[i], points[j]);}swap(points[l], points[i]);if(i K)//左边都是答案的一部分取右边找findkth(points,i1,r,K);else if(i K)//左边多于K个在左边继续分割findkth(points,l,i-1,K);elsereturn;} };时间复杂度 O(n)O(n)O(n) 244 ms 39 MB
http://www.zqtcl.cn/news/131154/

相关文章:

  • 公司产品营销策划安徽seo
  • 网站 平均加载时间百度搜索竞价推广
  • 赛车网站开发淄博网站建设及托管
  • 过时的网站湖州公司网站建设
  • 环球设计网站网站建设的面试要求
  • 百度公司网站排名怎么做潮阳网站开发
  • 杨和网站建设国内外建筑设计网站
  • 北京知名网站建设公司wordpress4.0.x 下载
  • 锡盟网站建设做网站视频存储
  • 深圳博纳网站建设高端品牌护肤品排行榜
  • 百度爱采购优化排名软件宁波seo搜索平台推广专业
  • 门户网站的建设公司台山网站定制
  • 建设公司网站需要什么群辉nas怎么做网站
  • 广西自治区集约化网站建设要求坂田网站的建设
  • 网站后台不能编辑企业如何申请网站
  • 网站建设网站设计多少钱网站系统开发方式
  • 站长收录wordpress配置好后别人无法访问
  • 我国档案网站建设吉林网站建设制作
  • 手机网站底部导航网站视频链接怎么做
  • 企业门户网站属于什么层seo关键词排行优化教程
  • wordpress 演示站广东省南粤交通投资建设有限公司网站
  • 典型的企业网站张家港保税区建设规划局网站
  • 网站设计公司那个好网页设计登录界面模板
  • 做网站的厂家聚美优品网站设计
  • 哈尔滨网站建设效果好网站改版 影响google 404跳首页
  • 廊坊网站推广的公司如何做1个手机网站
  • 网站index.php被修改南京cms建站系统
  • 淘宝网站模板是什么做的北海建设厅网站
  • 我想建个网站想做电商应该怎么入门
  • 广州番禺网站制作推广网站建设徐州百度网络网站