Leetcode每日一题:973.k-closest-points-to-origin(最接近原点的K个点)
思路:建立一个pair数组vec,每一个元素保存points的索引和坐标距远点的距离值,然后对vec进行排序,排序按照pair的值,最后从前到后输出k个点到返回值中即可;为什么不用map?因为不能直接对map中的元素进行排序,如果map的键放距离,值放索引,那么会存在多个索引对应一个距离值得情况,而map只会保留一个索引值,除非你用索引数组,这样就比较麻烦了;
//排序函数 按值排序
static 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)
{int len = points.size();vector<pair<int, int>> vec(len);for (int i = 0; i < len; i++){int x = points[i][0], y = points[i][1];vec[i] = pair<int, int>(i, x * x + y * y);}sort(vec.begin(), vec.end(), cmp);vector<vector<int>> res;for (auto s:vec){if (K--){res.push_back(points[s.first]);}else{break;}}return res;
}
Leetcode每日一题:973.k-closest-points-to-origin(最接近原点的K个点)相关推荐
- Leetcode PHP题解--D29 973. K Closest Points to Origin
973. K Closest Points to Origin 题目链接 973. K Closest Points to Origin 题目分析 给一个坐标数组points,从中返回K个离0,0最近 ...
- LeetCode Daily challenge - K Closest Points to Origin
文章目录 题目大意 思路 代码 总结 题目大意 找前K小元素,只不过元素是二维的坐标 思路 很容易想到排序后取前K个,虽然可以但是速度不够快.实际上类似于找第K大(小),可以用划分的方法找,每次随机划 ...
- Leetcode每日一题:面试题02.02.kth-node-from-end-of-list-lcci(返回倒数第k个节点)
思路:典型得快慢指针问题,快指针与慢指针中间隔着k-2个节点,那么同时++快慢指针,当快指针指向链表结尾节点时,慢指针指向倒数第k个节点: struct ListNode {int val;ListN ...
- LeetCode 973. K Closest Points to Origin--TopK 问题--最小堆--C++,Python解法
题目地址:K Closest Points to Origin - LeetCode We have a list of points on the plane. Find the K closest ...
- 【LeetCode每日一题】1723. 完成所有工作的最短时间
[LeetCode每日一题]1723. 完成所有工作的最短时间 [1] 1723. 完成所有工作的最短时间 [2] 473. 火柴拼正方形 [1] 1723. 完成所有工作的最短时间 题目: 给你一个 ...
- leetcode每日一题--雀巢原理;抽屉算法;Quorum机制;分布式应用
leetcode每日一题 539. 最小时间差 示例 1: 输入:timePoints = ["23:59","00:00"] 输出:1 示例 2: 输入:ti ...
- leetcode每日一题825. 适龄的朋友 快排+双指针
本文目录 leetcode每日一题825. 适龄的朋友 快排+双指针 写在前面 题目 示例 提示 思路 代码实现 执行结果 写在后面 leetcode每日一题825. 适龄的朋友 快排+双指针 写在前 ...
- LeetCode每日一题之排列硬币
前言: 大家好,今天是LeetCode每日一题的第十天,,给大家分享的是排列硬币,难度系数两颗星!废话不多说,先上题目! 1.1 题目要求 题目类型:排列硬币 题目内容: 总共有n枚硬币,将它们摆成一 ...
- Leetcode每日一题——思路小记
文章目录 LeetCode每日一题 golang T15 2020.6.12 三数之和,双指针的运用 T70 2020.6.13 斐波那契数列 T1014 2020.6.17 最佳观光:双指针,计算公 ...
- leetcode每日刷题计划-简单篇day8
leetcode每日刷题计划-简单篇day8 今天是纠结要不要新买手机的一天QAQ想了想还是算了吧,等自己赚钱买,加油 Num 70 爬楼梯 Climbing Stairs class Solutio ...
最新文章
- Hadoop自带WordCount.java程序
- Android 小项目之--Mini音乐播放器【简单版】(附源码)
- python 保存网页到印象笔记_如何将网页内容保存到印象笔记?
- 是雏还是鹰mdash;mdash;编程规范之代码注释
- 机器学习系统设计与建议
- SiteServer 迁移至 Windows 2008 R2 问题汇总
- 突击计划——两种温度格式的转换
- 1. 变量和基本类型
- solr7在tomcat上的部署
- ERROR 1130 (HY000): Host ‘192.168.3.238‘ is not allowed to connect to this MySQL server
- 【业界】火山翻译:工业级应用与研究
- OC语言——————表视图
- Todoist Chrome:待办事项列表及任务管理
- python制作3d相册代码_python中Matplotlib实现绘制3D图的示例代码
- 已解决:ORA-00932:数据类型不一致:应为-,但却获得CLOB
- html qq在线状态,qq各种在线状态意思
- 如何将多行单元格数据转变成一行?这个Excel技巧你一定不知道!
- 互联网校招研发薪资汇总
- 也谈男士品牌(综合版)
- 【bat批处理脚本命令】bat脚本命令的基本使用(保姆级图文+实现代码)
热门文章
- webpack 3 零基础入门教程 #6 - 使用 loader 处理 CSS 和 Sass
- php常用的的字符串转换
- javascript Event loop
- WordPress Tweet Blender插件跨站脚本漏洞
- 解决数据库导入导出的常见问题集解决办法
- PHPCMS V9.6.0 SQL注入漏洞EXP
- Android 开发 关于APP无法安装到Android模拟器上的问题
- Python拓展12(使配置文件生效ConfigParser模块)
- 【持久化框架】Mybatis与Hibernate的详细对比
- [C++][代码库]Vector3空间向量类