gpt4 book ai didi

javascript - 在成对数组中找到最接近的数字对的最快方法是什么

转载 作者:行者123 更新时间:2023-11-30 15:00:20 24 4
gpt4 key购买 nike

var element_pairs = [[11.333112,22.655543],[35,31231,33.2232],[122352,343421]];
var search_pair = [32,1113,34.5433];
findClosestPair(element_pairs, search_pair);
// [35,31231,33.2232]

在成对数组中找到数学上最接近的数字对的最快方法是什么。

最佳答案

你可以使用 Array#reduce并返回所有对中具有最小增量的元组。

function findClosestPair(elements, search) {
return elements.reduce(function (a, b) {
function getDelta(v, w) {
return Math.abs(v[0] - w[0]) * Math.abs(v[1] - w[1]);
}
return getDelta(a, search) < getDelta(b, search) ? a : b;
});
}


var elements = [[11.333112, 22.655543], [35.31231, 33.2232], [122352, 343421]],
search_element = [32.1113, 34.5433];

console.log(findClosestPair(elements, search_element));

关于javascript - 在成对数组中找到最接近的数字对的最快方法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46628007/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com