Maison > Article > développement back-end > Comment trouver la valeur la plus proche dans un tableau ?
Correspondance de valeur la plus proche dans un tableau
Étant donné un tableau de valeurs et une valeur cible, une exigence courante est de récupérer la valeur correspondante la plus proche dans le tableau. Cela peut s'avérer particulièrement utile lorsqu'il s'agit de données imprécises ou lorsqu'une correspondance exacte n'est pas disponible.
Solution :
Pour déterminer la valeur correspondante la plus proche, un algorithme de recherche itératif peuvent être employés. Voici une fonction PHP qui implémente cette approche :
function getClosest($search, $arr) { $closest = null; foreach ($arr as $item) { if ($closest === null || abs($search - $closest) > abs($item - $search)) { $closest = $item; } } return $closest; }
Cette fonction fonctionne en comparant de manière itérative la valeur cible avec chaque élément du tableau. Il conserve une variable $closest pour suivre la valeur correspondante la plus proche rencontrée. Pour chaque comparaison, il calcule la différence absolue entre la cible et l'élément actuel du tableau. Si la différence est inférieure à la différence enregistrée précédemment, il met à jour la variable $closest.
Exemple :
En utilisant l'exemple de tableau fourni :
$array = [0, 5, 10, 11, 12, 20];
Les recherches suivantes peuvent être effectuées :
En parcourant le tableau et en évaluant chaque élément, cet algorithme trouve efficacement la valeur correspondante la plus proche de la cible.
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!