配列内の指定された値に最も近い数値を見つけるにはどうすればよいですか?

Linda Hamilton
リリース: 2024-11-03 12:30:02
オリジナル
176 人が閲覧しました

How to Find the Nearest Number in an Array to a Given Value?

配列内の最も近い数値の決定

-1000 から 1000 までの範囲の数値と、次のような整数を含む配列があるとします。 as:

[2, 42, 82, 122, 162, 202, 242, 282, 322, 362]
ログイン後にコピー

あなたのタスクは、配列内の最も近い数値と一致するように指定された数値を変更することです。たとえば、指定した数値が 80 の場合、82 に調整する必要があります。

解決策:

望ましい結果を達成するには、reduce() を利用できます。配列内でターゲットの数値に最も近い数値を見つけるメソッドです。 reduce() メソッドは関数と初期アキュムレータ値を引数として受け取り、配列を反復処理して関数を各要素とアキュムレータに適用します。

ES5 JavaScript での実装例は次のとおりです:

<code class="js">var counts = [4, 9, 15, 6, 2],
  goal = 5;

var closest = counts.reduce(function (prev, curr) {
  return Math.abs(curr - goal) < Math.abs(prev - goal) ? curr : prev;
});

console.log(closest); // Output: 6</code>
ログイン後にコピー

この例では、reduce() メソッドは、配列の各要素とターゲット数値 (5) の間の絶対差を計算します。次に、絶対的な差を比較し、差が最も小さい要素を最も近い変数に割り当てます。最も近い変数は値 6 を保持します。これは、配列内で 5 に最も近い数値です。

以上が配列内の指定された値に最も近い数値を見つけるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート