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

658. 找到 K 个最接近的元素

658. 找到 K 个最接近的元素
在这里插入图片描述


Java代码:滑窗

class Solution {public List<Integer> findClosestElements(int[] arr, int k, int x) {List<Integer> list = new ArrayList<>();for (int i = 0; i < arr.length; i++) {arr[i] = arr[i] - x;}for(int i = 0; i < k; i++) {list.add(arr[i] + x);}for (int i = k; i < arr.length; i++) {if (Math.abs(arr[i]) < Math.abs(arr[i - k])) {list.remove(new Integer(arr[i - k] + x));  // 如果入参是int类型,默认删除下边;list.add(arr[i] + x);}}return list;}
}

java: 排序

class Solution {public List<Integer> findClosestElements(int[] arr, int k, int x) {List<Integer> list = new ArrayList<Integer>();for (int num : arr) {list.add(num);}Collections.sort(list, (a, b) -> {if (Math.abs(a - x) != Math.abs(b - x)) {return Math.abs(a - x) - Math.abs(b - x);} else {return a - b;}});List<Integer> ans = list.subList(0, k);Collections.sort(ans);return ans;}
}
http://www.lryc.cn/news/258493.html

相关文章:

  • 十二、MapReduce概述
  • shell条件测试
  • python在线读取传奇列表,并解析为需要的JSON格式
  • 【docker 】 安装docker(centOS7)
  • 智能网联汽车场景数据图像标注要求及方法
  • 四. 基于环视Camera的BEV感知算法-BEVFormer
  • gin投票系统3
  • windows如何解决端口冲突(实用篇)
  • 「PPT 下载」Google DevFest Keynote | 复杂的海外网络环境下,如何提升连接质量
  • Logstash输入Kafka输出Es配置
  • Bash脚本处理ogg、flac格式到mp3格式的批量转换
  • Android 依据Build相关信息判断机型
  • 2024年甘肃省职业院校技能大赛信息安全管理与评估赛项一阶段样题一
  • ARM:作业3
  • 基于OpenCV+CNN+IOT+微信小程序智能果实采摘指导系统——深度学习算法应用(含python、JS工程源码)+数据集+模型(二)
  • *上位机的定义
  • 架构LAMP
  • vue实现浏览器不同分辨率下的不同样式,css的媒体查询与js判断当前浏览器宽度
  • CentOS7 安装包 MariaDB 10.4.x
  • js中箭头函数简单介绍
  • 分布式ID服务实践
  • YOLOv8改进 | 2023主干篇 | 利用RT-DETR特征提取网络PPHGNetV2改进YOLOv8(超级轻量化精度更高)
  • C现代方法(第26章)笔记——<stdarg.h>、<stdlib.h>和<time.h>标准库
  • CCKS2023-面向金融领域的主体事件检测-亚军方案分享
  • Linux下通过find找文件---通过修改时间查找(-mtime)
  • 图文教程:stable-diffusion的基本使用教程 txt2img(多图)
  • VisualSVN Server的安装全过程
  • Python 进阶(十六):二进制和ASCII码的转换(binascii 模块)
  • CSS Grid布局入门:从零开始创建一个网格系统
  • java--Collection的遍历方式