Nous allons écrire un programme pour calculer le nombre de rotations nécessaires pour trier un tableau dans un ordre non croissant. Le programme utilisera une boucle pour parcourir le tableau et garder une trace du plus grand élément trouvé jusqu'à présent. Lorsqu'un élément plus petit est trouvé, nous incrémentons le nombre de tours et mettons à jour l'élément le plus grand. Enfin, le nombre de rotations sera renvoyé comme résultat du programme. Ce programme nous aidera à trier efficacement un tableau et à déterminer le nombre de rotations nécessaires pour obtenir un ordre non croissant.
La façon de calculer la rotation requise pour trier un tableau dans un ordre non croissant est la suivante -
Divisez le tableau en deux parties : la partie triée et la partie non triée.
Le nombre de rotations nécessaires est égal au nombre d'éléments dans la pièce triée.
Pour trouver la section triée, parcourez le tableau de droite à gauche et gardez une trace du plus grand élément.
Lorsqu'un élément plus petit est trouvé, rompez la boucle et renvoyez la longueur de la partie triée.
Si la boucle se termine, l'ensemble du tableau est trié, donc 0 est renvoyé.
Voici un exemple JavaScript complet pour calculer le nombre de rotations nécessaires pour trier un tableau dans un ordre non croissant -
function countRotations(arr) { let n = arr.length; let minIndex = 0; let minValue = arr[0]; // Find the minimum element for (let i = 1; i < n; i++) { if (arr[i] < minValue) { minIndex = i; minValue = arr[i]; } } // Return the number of rotations return minIndex; } let arr = [15, 18, 2, 3, 6, 12]; console.log("The number of rotations required to sort the array in non-increasing order is:", countRotations(arr));
countRotations prend un tableau comme paramètre.
n est initialisé à la longueur du tableau.
minIndex et minValue sont respectivement initialisés à 0 et au premier élément du tableau.
La boucle for parcourt le tableau à partir du deuxième élément pour trouver l'index et la valeur du plus petit élément du tableau. Si un élément plus petit est trouvé, minIndex et minValue seront mis à jour avec son index et sa valeur.
Enfin, la fonction renvoie minIndex, qui est le nombre de rotations nécessaires pour trier le tableau dans un ordre non croissant.
Dans cet exemple, le tableau est [15, 18, 2, 3, 6, 12],, le plus petit élément est 2, est à l'index 2.Pour trier le tableau dans un ordre non croissant, 2 est requis Placez-le à la fin du tableau, le nombre de rotations requis est donc de 2 >.
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!