public class Solution {public List<Integer> findClosestElements(int[] arr, int k, int x) {int size = arr.length;int left = 0;int right = size - k -1;while (left <= right) {int mid = left + (right - left) / 2;// 尝试从长度为 k + 1 的连续子区间删除一个元素// 从而定位左区间端点的边界值if (x - arr[mid] > arr[mid + k ] - x) {left = mid + 1;} else {right = mid - 1;}}while (left>= size-k) break;List<Integer> res = new ArrayList<>();for (int i = left; i < left + k; i++) {res.add(arr[i]);}return res;}
}

LeetCode658相关推荐

  1. leetcode658. 找到 K 个最接近的元素(二分法)

    给定一个排序好的数组,两个整数 k 和 x,从数组中找到最靠近 x(两数之差最小)的 k 个数.返回的结果必须要是按升序排好的.如果有两个数与 x 的差值一样,优先选择数值较小的那个数. 示例 1: ...

  2. C练题笔记之:Leetcode-658. 找到 K 个最接近的元素

    题目: 给定一个 排序好 的数组 arr ,两个整数 k 和 x ,从数组中找到最靠近 x(两数之差最小)的 k 个数.返回的结果必须要是按升序排好的. 整数 a 比整数 b 更接近 x 需要满足: ...

  3. 剑指Offer and Leetcode刷题总结之常见策略(1):二分法

    目录 汇总参考:二分法汇总参考 一. 在数组中查找符合条件的元素的索引 Leetcode704:二分查找 Leetcode34:在排序数组中查找元素的第一个和最后一个位置 Leetcode33:搜索旋 ...

  4. LeetCode题解:找到 K 个最接近的元素

    模版III - 找到 K 个最接近的元素(middle) 一.题目 LeetCode658.找到 K 个最接近的元素 给定一个排序好的数组 arr ,两个整数 k 和 x ,从数组中找到最靠近 x(两 ...

  5. 17道题带你理解二分查找

    不太会的可以先看看二分查找的模板 点这里 最需要注意的是二分查找的分界线并不止局限于大于等于小于,而是对某种性质的一种分界 1.Leetcode704. 二分查找 class Solution {pu ...

  6. 数学(持续更新、整理)

    两数相加:leetcode-2 Z字形变换:leetcode-6 整数反转:leetcode-7 Pow(x, n):leetcode-50 排列序列:leetcode-60 爬楼梯:leetcode ...

最新文章

  1. Netty深入浅出(一)入门
  2. php编码处理的文章一篇
  3. Android 之一 Android Studio 安装、配置等新手入门 + 百度地图定位 + 移动摇杆 的实现
  4. Tomcat7基于Redis的Session共享实战二
  5. [Redux/Mobx] 在redux中,什么是store?
  6. 编译并使用boost库(win7+boost1.60+vs2013)
  7. Springboot中,如何读取配置文件中的属性
  8. JSK-16013 价钱统计【基础】
  9. CocurrentHashMap和Hashtable的区别
  10. oracle数据库怎么导出dat文件_论将数据从数据库导出为dat格式
  11. ASP.NET Core使用微软官方类库实现汉字简繁切换以及转拼音
  12. ROS新建工作空间及编译
  13. IFC学习相关资料加强版 致敬黑夜的骑士
  14. android媒体焦点音量压低/暂停逻辑源码简析
  15. matlab封装的模块,matlab模块封装
  16. 蓝桥杯 试题 算法训练 跳马 C++ 详解
  17. Python - 装机系列22 华擎A520+AMD 4650G + Ubuntu装新机过程
  18. 家居装修知识 装修注意事项需牢记
  19. 【动态规划】线性动态规划
  20. 深析SpringCloud与Docker微服务架构

热门文章

  1. sync、fsync的区别是什么?
  2. opcache php 原理_php性能加速之opcache
  3. 磁珠纯化技术研究丨G-Biosciences 羧基磁珠方案
  4. 有序列表的部分属性和a超链接的部分属性 部分可能用到的行级标签
  5. java可重入锁是什么意思_Java中的可重入(Reentrant)锁
  6. Java - 栈和队列
  7. Android中Listview(七)--排序ListView
  8. c语言实训报告总结500字,大学毕业生个人自我鉴定范文500字(精选5篇)
  9. 一台服务器虚拟交换机,虚拟化架构下虚拟交换机和分布式虚拟交换机解析
  10. 浏览器出现500 Internal Privoxy Error