使用 JavaScript 在数组中查找与特定数字最接近的两个元素
问题
我们需要编写一个JavaScript函数,该函数接受一个排序整数数组arr作为第一个参数和一个目标数字作为第二个参数。
我们的函数应该返回一个正好包含数组arr中且最接近目标的两个数字的数组。输出数组也应该按升序排序。
例如,如果函数的输入是
输入
const arr = [1, 2, 3, 4, 5]; const target = 3;
输出
const output = [2, 3];
示例
以下是代码-
const arr = [1, 2, 3, 4, 5];
const target = 3;
const findClosest = (arr = [], target = 1) => {
const size = 2;
return arr.sort((a, b) => {
const distanceA = Math.abs(a - target)
const distanceB = Math.abs(b - target)
if (distanceA === distanceB) {
return a - b
}
return distanceA - distanceB
}).slice(0, size)
.sort((a, b) => a - b);
};
console.log(findClosest(arr, target));输出结果[2, 3]
热门推荐
10 香港老妈结婚祝福语简短
11 毕业立体贺卡祝福语简短
12 简短新年年会祝福语
13 评论小品祝福语大全简短
14 恭喜师兄结婚祝福语简短
15 员工集体辞职祝福语简短
16 高中新生祝福语 简短
17 装修祝福语男生搞笑简短
18 生日开业蛋糕祝福语简短