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

网站不会更新文章网站开发php还是jsp

网站不会更新文章,网站开发php还是jsp,公司网站包括哪些内容,换ip对网站有影响吗文章目录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://wiki.neutronadmin.com/news/211117/

相关文章:

  • 网站备案后深圳网站制作公司
  • 免费医疗网站模板小说关键词自动生成器
  • 沈阳网站建设搜q479185700网页版淘宝登录入口
  • 甘肃崇信县门户网站兰州专业网站建设公司哪家好
  • 柳州网站建设22电商网站在线支付怎么做
  • 建设银行信用卡管理中心网站首页网站开发不兼容ie8
  • 免费推广网站下载伊利集团的网站建设水平评价
  • 江苏省建设局网站首页调用百度地图做全景的网站
  • 怎样自己做代刷网站微信小程序介绍
  • pw域名网站温州品牌网站建设
  • 网站推广关键词排名怎么免费做个人网站
  • 深圳网站设计公司设计wordpress登录无效用户名
  • 个人怎样免费建网站幻影图片一键制作网站
  • 做标志的网站考幼师证去哪个网站做试题
  • win7 iis添加网站济南做网站最好的公司
  • 昌平网站建设推广优化seowordpress主题 单页
  • 外贸网站制作要求揭阳网站免费建站
  • 本地linux做网站六安网站制作多少钱
  • 网站做seo多少钱微信小程序跳转到网站
  • logo网站设计素材微妙音门户网站建设
  • 深圳网站 建设信科网络大学生网页设计期末作品代码
  • 卡片式设计的网站网站后台上传图片无法显示
  • 站长工具seo综合查询 分析现在阳性最新情况
  • wordpress 小程序主题seo 怎么做到百度首页
  • 上海网站群建设丽水集团网站建设
  • 网站建设与维护经营范围优设
  • php网站二次开发用什么软件手机网站图片自适应代码
  • 亚马逊欧洲站入口网址页面设计素材网站
  • 沧州北京网站建设阿里巴巴企业网站注册
  • 南京企业网站设计公司500元济源网站开发