欢迎光临散文网 会员登陆 & 注册

LeetCode 658. Find K Closest Elements

2023-04-21 15:49 作者:您是打尖儿还是住店呢  | 我要投稿

Given a sorted integer array arr, two integers k and x, return the k closest integers to x in the array. The result should also be sorted in ascending order.

An integer a is closer to x than an integer b if:

  • |a - x| < |b - x|, or

  • |a - x| == |b - x| and a < b

 

Example 1:

Input: arr = [1,2,3,4,5], k = 4, x = 3

Output: [1,2,3,4]

Example 2:

Input: arr = [1,2,3,4,5], k = 4, x = -1

Output: [1,2,3,4]

 

Constraints:

  • 1 <= k <= arr.length

  • 1 <= arr.length <= 104

  • arr is sorted in ascending order.

  • -104 <= arr[i], x <= 104

我是先把跟x的差值的绝对值放到二维数组中,然后对应的值放到另一个位置上,依次排序,

然后找出最接近的k个数值即可,然后把数字放到list中就行,其实多操作了一次,没必要再放到k长度的数组中,直接放到list中即可。

下面是代码:

Runtime: 25 ms, faster than 23.48% of Java online submissions for Find K Closest Elements.

Memory Usage: 43.7 MB, less than 98.88% of Java online submissions for Find K Closest Elements.


LeetCode 658. Find K Closest Elements的评论 (共 条)

分享到微博请遵守国家法律