Maison > interface Web > js tutoriel > Comment puis-je trier correctement un tableau d'entiers en JavaScript pour trouver les valeurs minimales et maximales ?

Comment puis-je trier correctement un tableau d'entiers en JavaScript pour trouver les valeurs minimales et maximales ?

Susan Sarandon
Libérer: 2024-12-24 11:41:14
original
460 Les gens l'ont consulté

How Can I Correctly Sort an Integer Array in JavaScript to Find the Minimum and Maximum Values?

Obtenir le plus et le moins d'un tableau d'entiers : une substitution de chaîne inattendue

La tâche consistant à trouver les valeurs les plus élevées et les plus basses dans un un tableau comprenant uniquement des entiers semble d'une simplicité trompeuse. Cependant, comme on peut le découvrir, la méthode native sort() présente un obstacle inattendu. Comme il donne la priorité par défaut à l’ordre alphabétique, le tri numérique s’avère plus difficile que prévu. Comment pouvons-nous surmonter cet obstacle et demander à la fonction sort() de se concentrer sur les valeurs entières contenues dans les éléments du tableau ?

Considérons l'exemple suivant :

var numArray = [140000, 104, 99];
numArray = numArray.sort();
console.log(numArray);
Copier après la connexion

Une attente intuitive nous amènerait s'attendre à une sortie de 99, 104, 140 000. Cependant, le résultat est radicalement différent : 104, 140 000, 99. Ceci un comportement particulier découle de la tendance innée de la méthode sort() à traiter les valeurs comme des chaînes plutôt que comme des entiers.

Pour remédier à ce problème, nous pouvons introduire une fonction de tri personnalisée pour gérer explicitement les valeurs numériques. Voici comment nous pouvons y parvenir :

var numArray = [140000, 104, 99];
numArray.sort(function(a, b) {
  return a - b;
});

console.log(numArray);
Copier après la connexion

La fonction sortNumber(a, b) gère efficacement le tri numérique que nous recherchons. En soustrayant a de b, les valeurs positives poussent a vers la droite, garantissant que les valeurs plus élevées apparaissent plus tard dans le tableau trié. À l’inverse, les valeurs négatives provoquent des échanges, plaçant les valeurs plus petites vers la gauche. Cette fonction de tri personnalisée nous permet de trier avec précision des tableaux d'entiers, en fournissant les valeurs les plus élevées et les plus basses comme prévu.

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