Maison > interface Web > js tutoriel > Comment trouver le nombre le plus proche dans un tableau d'une valeur donnée ?

Comment trouver le nombre le plus proche dans un tableau d'une valeur donnée ?

Linda Hamilton
Libérer: 2024-11-03 12:30:02
original
230 Les gens l'ont consulté

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

Détermination du nombre le plus proche dans un tableau

Supposons que vous ayez une valeur numérique allant de -1000 à 1000 et un tableau contenant des entiers, tels que comme :

[2, 42, 82, 122, 162, 202, 242, 282, 322, 362]
Copier après la connexion

Votre tâche consiste à modifier le nombre donné pour qu'il corresponde au nombre le plus proche du tableau. Par exemple, si le nombre que vous donnez est 80, il doit être ajusté à 82.

Solution :

Pour obtenir le résultat souhaité, nous pouvons tirer parti de la réduction() méthode pour trouver le nombre le plus proche du tableau de notre nombre cible. La méthode réduire() prend une fonction et une valeur d'accumulateur initiale comme arguments, parcourant le tableau et appliquant la fonction à chaque élément et à l'accumulateur.

Voici un exemple d'implémentation dans 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>
Copier après la connexion

Dans cet exemple, la méthode réduire() calcule la différence absolue entre chaque élément du tableau et le nombre cible (5). Il compare ensuite les différences absolues et attribue l'élément présentant la plus petite différence à la variable la plus proche. La variable la plus proche contient la valeur 6, qui est le nombre le plus proche de 5 dans le tableau.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal