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

icp网站备案查询杭州网站关键词排名

icp网站备案查询,杭州网站关键词排名,网页制作与维护,下载了字体怎么安装到wordpress1.题目描述 给定一个点的列表 points,其中每个点的坐标表示为 [xi, yi],以及一个整数 k,表示需要找到距离原点 (0,0) 最近的 k 个点。 2.思路 思路一: 首先输入是一个二维数组,然后开始计算二维数组忠每个元素(每…

1.题目描述

给定一个点的列表 points,其中每个点的坐标表示为 [xi, yi],以及一个整数 k,表示需要找到距离原点 (0,0) 最近的 k 个点。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.思路

思路一:
首先输入是一个二维数组,然后开始计算二维数组忠每个元素(每一个点)与原点直接的距离(可以直接对每个点求勾股定理),最后输出是离原点距离最近的点(k代表返回的点的个数),按升序排序。

思路二:
用优先级队列[PiorityQueue默认是小根堆,但是可以改变比较器的规则(comparetor,让他变成大根堆)。],把每个坐标的欧式距离入堆之后,用对象.size()的方法,列出总共的元素,根据题目要求要前k跟原点近的点的欧式距离,保留前k个,其他用对象.poll()按最大开始剔除,直到剩最小的k个,最后用一个二维数组输出。
在这里插入图片描述
在这里插入图片描述

在 PriorityQueue 中,标准的 poll() 方法并不接受任何参数。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.代码实现

import java.util.PriorityQueue;public class Solution06 {public int[][] kClosest(int[][] points, int k) {// 创建最大堆,按照 (x² + y²) 从大到小排序,创建和声明最大堆,此时堆是空的PriorityQueue<int[]> s1=new PriorityQueue<>((a,b)->Integer.compare(distance(b),distance(a)));//遍历每个点,联系:一个求距离的算法。for(int[] point:points){s1.offer(point);//加入堆if (s1.size()>k){s1.poll();//只保留最近的 k 个点,也就是把大根堆大的点剔除掉,剩下k个小的元素}}//输出剩下的k个二维数组,有k个点,2代表每个坐标都有x,y,也就是两列int[][] reasult=new int[k][2];int index=0;for(int[] subpoint:s1){reasult[index]=subpoint;index++;}return reasult;
//        int[][] result = new int[k][2];
//        for (int i = 0; i < k; i++) {
//            result[i] = s1.poll();
//        }
//        return result;}private static int distance(int[] point){return point[0]*point[0]+point[1]*point[1];}}

带main方法验证的代码:

import java.util.PriorityQueue;
import java.util.Arrays;
public class Solution06 {public int[][] kClosest(int[][] points, int k) {// 创建最大堆,按照 (x² + y²) 从大到小排序,创建和声明最大堆,此时堆是空的PriorityQueue<int[]> s1=new PriorityQueue<>((a,b)->Integer.compare(distance(b),distance(a)));//遍历每个点,联系:一个求距离的算法。for(int[] point:points){s1.offer(point);//加入堆if (s1.size()>k){s1.poll();//只保留最近的 k 个点,也就是把大根堆大的点剔除掉,剩下k个小的元素}}//输出剩下的k个二维数组,有k个点,2代表每个坐标都有x,y,也就是两列int[][] reasult=new int[k][2];int index=0;for(int[] subpoint:s1){reasult[index]=subpoint;index++;}return reasult;
//        int[][] result = new int[k][2];
//        for (int i = 0; i < k; i++) {
//            result[i] = s1.poll();
//        }
//        return result;}private static int distance(int[] point){return point[0]*point[0]+point[1]*point[1];}public static void main(String args[]){Solution06 test=new Solution06();int[][] point1={{1, 3}, {-2, 2}};int k1=1;System.out.println("输出与原点最近的点:");printResult(test.kClosest(point1,k1));}// 打印二维数组的方法private static void printResult(int[][] result) {
//        for (int[] point : result) {
//            System.out.println(Arrays.toString(point));
//        }
//        System.out.println();for(int[] rePoint:result){System.out.println(Arrays.toString(rePoint));}}}

带main方法的测试代码:

import java.util.PriorityQueue;
import java.util.Arrays;
public class Solution06 {public int[][] kClosest(int[][] points, int k) {// 创建最大堆,按照 (x² + y²) 从大到小排序,创建和声明最大堆,此时堆是空的PriorityQueue<int[]> s1=new PriorityQueue<>((a,b)->Integer.compare(distance(b),distance(a)));//遍历每个点,联系:一个求距离的算法。for(int[] point:points){s1.offer(point);//加入堆if (s1.size()>k){s1.poll();//只保留最近的 k 个点,也就是把大根堆大的点剔除掉,剩下k个小的元素}}//输出剩下的k个二维数组,有k个点,2代表每个坐标都有x,y,也就是两列int[][] reasult=new int[k][2];int index=0;for(int[] subpoint:s1){reasult[index]=subpoint;index++;}return reasult;
//        int[][] result = new int[k][2];
//        for (int i = 0; i < k; i++) {
//            result[i] = s1.poll();
//        }
//        return result;}private static int distance(int[] point){return point[0]*point[0]+point[1]*point[1];}//   public static void main(String args[])
//   {
//       Solution06 test=new Solution06();
//       int[][] point1={{1, 3}, {-2, 2}};
//       int k1=1;
//       System.out.println("输出与原点最近的点:");
//       printResult(test.kClosest(point1,k1));
//
//   }
//    // 打印二维数组的方法
//    private static void printResult(int[][] result) {
        for (int[] point : result) {
            System.out.println(Arrays.toString(point));
        }
        System.out.println();
//        for(int[] rePoint:result)
//        {
//            System.out.println(Arrays.toString(rePoint));
//        }
//    }public static void main(String[] args) {Solution06 solution = new Solution06();int[][] points1 = {{1, 3}, {-2, 2}};int k1 = 1;System.out.println("Test Case 1:");int[][] result1 = solution.kClosest(points1, k1);for (int[] point : result1) {System.out.println(Arrays.toString(point));}System.out.println();int[][] points2 = {{3, 3}, {5, -1}, {-2, 4}};int k2 = 2;System.out.println("Test Case 2:");int[][] result2 = solution.kClosest(points2, k2);for (int[] point : result2) {System.out.println(Arrays.toString(point));}System.out.println();}}

文章转载自:

http://8XYVQhoU.tnrdz.cn
http://ckH11hw5.tnrdz.cn
http://nXZBrpOO.tnrdz.cn
http://EPkoOqBb.tnrdz.cn
http://xHXVGhPx.tnrdz.cn
http://l2hfAFx7.tnrdz.cn
http://SJSqq1ah.tnrdz.cn
http://VO0PfDjs.tnrdz.cn
http://wsspXaVu.tnrdz.cn
http://Ve2K50DP.tnrdz.cn
http://YshqS7i5.tnrdz.cn
http://1nwmHNo6.tnrdz.cn
http://jgyD51CX.tnrdz.cn
http://ohaPfx1L.tnrdz.cn
http://Pp5Bg249.tnrdz.cn
http://v1Igolnw.tnrdz.cn
http://FdjXmprw.tnrdz.cn
http://r3EBnWJn.tnrdz.cn
http://4hEcQgfF.tnrdz.cn
http://Ytm7Idgt.tnrdz.cn
http://SQLjmw9L.tnrdz.cn
http://bZeJ8KPa.tnrdz.cn
http://c25qWHVm.tnrdz.cn
http://O2C3UtCH.tnrdz.cn
http://LfzkABGT.tnrdz.cn
http://EvGS83Bs.tnrdz.cn
http://aM8HaqWN.tnrdz.cn
http://6xM2isZR.tnrdz.cn
http://3THYHqVX.tnrdz.cn
http://Quqv1Ggr.tnrdz.cn
http://www.dtcms.com/wzjs/674240.html

相关文章:

  • 做网站用哪个预装系统金耀网站建设网站制作
  • 自己用iis怎么建设网站建设网站需求文档
  • 江门站官网免费做橙光封面的网站
  • 网站开发技术留言什么是网站易用性
  • 在云服务器上搭建网站学物联网工程后悔死了
  • 萧山网站建设xssem专业网站建设市场分析
  • 网站开发研究生企业如何开展网络营销
  • 网站开发提供图片加载速度wordpress自适应 slide
  • 网站设置二级域名好吗如何制作wordpress网站地图
  • 做任务网站排行榜大专网站建设的论文范文
  • 用三权重的网站做友链有好处没毕业设计和论文网站
  • 专业上海网站建设公司哪家好制作短视频的软件有哪些
  • 设计网站费用女性开源网站
  • 内蒙住房和城乡建设部网站莱芜受欢迎的网站建设
  • 做联轴器的网站个人网站可以收费吗
  • 网站建设及经营应解决好的问题书籍页面设计模板
  • 手机网站开发怎么样网站开发环境及工具
  • 阿里云空间部署网站网站开发 外包
  • 常州自助做网站北京开网站建设公司
  • 网站开发文档带er图wordpress傻瓜建站教程
  • 与网站开发相关的书籍系统建站
  • 棋牌网站哪里做火星建站免费wap自助建站
  • 丽水网站制作公司企业微信网站开发公司
  • 网站统计哪个好用招聘模板图片
  • 微信开发网站开发未来前景做cpa网站
  • 外发加工网站炒股配资网站建设
  • 手机网站切图哪些域名不能够做淘宝客网站
  • 动漫电影做英语教学视频网站网站ui界面设计模板
  • 寻花问柳-专注做一家男人的网站猪做网站业务提成多少
  • 六安建设局网站效果图制作软件app