J'essaye de faire un programme qui se compose d'un tableau de 10 entiers qui ont tous une valeur aléatoire, jusqu'ici tout va bien.
Cependant, maintenant je dois les trier dans l'ordre de la valeur la plus basse à la valeur la plus élevée, puis l'imprimer à l'écran, comment pourrais-je procéder?
(Désolé d'avoir autant de code pour un programme aussi petit, je ne suis pas si bon avec les boucles, je viens de commencer à travailler avec Java)
public static void main(String args[])
{
int [] array = new int[10];
array[0] = ((int)(Math.random()*100+1));
array[1] = ((int)(Math.random()*100+1));
array[2] = ((int)(Math.random()*100+1));
array[3] = ((int)(Math.random()*100+1));
array[4] = ((int)(Math.random()*100+1));
array[5] = ((int)(Math.random()*100+1));
array[6] = ((int)(Math.random()*100+1));
array[7] = ((int)(Math.random()*100+1));
array[8] = ((int)(Math.random()*100+1));
array[9] = ((int)(Math.random()*100+1));
System.out.println(array[0] +" " + array[1] +" " + array[2] +" " + array[3]
+" " + array[4] +" " + array[5]+" " + array[6]+" " + array[7]+" "
+ array[8]+" " + array[9] );
}
Réponses:
Les boucles sont également très utiles à connaître, en particulier lors de l'utilisation de tableaux,
la source
Ajoutez la ligne avant println et votre tableau sera trié
la source
Cela peut vous aider à comprendre les boucles en vous implémentant vous-même. Voir le tri à bulles est facile à comprendre:
Bien sûr, vous ne devez pas l'utiliser en production car il existe des algorithmes plus performants pour les grandes listes telles que QuickSort ou MergeSort qui sont implémentés par
Arrays.sort(array)
la source
Jetez un œil à Arrays.sort ()
la source
J'étais paresseux et j'ai ajouté les boucles
Votre tableau a une longueur de 10. Vous avez besoin d'une variable (
i
) qui prend les valeurs de0
à9
.Est une bibliothèque de méthodes qui trie les tableaux.
la source
fera parfaitement le travail
la source
Voir ci-dessous, il vous donnera un tri croissant et décroissant à la fois
La sortie sera
Remarque: vous pouvez utiliser Math.ranodm au lieu d'ajouter des nombres manuels. Faites-moi savoir si j'ai besoin de changer le code ...
Bonne chance ... à vous !!!
la source
Integer
lorsque vous pouvez utiliserint
, car cela entraînerait de la lenteur.la source
Voici comment l'utiliser dans votre programme:
la source
juste pour info, vous pouvez maintenant utiliser la nouvelle API Java 8 pour trier tout type de tableau en utilisant
parallelSort
parallelSort
utilise le framework Fork / Join introduit dans Java 7 pour affecter les tâches de tri à plusieurs threads disponibles dans le pool de threads.les deux méthodes qui peuvent être utilisées pour trier un
int
tableau,la source
Pour l'ordre naturel:
Arrays.sort(array)
Pour l'ordre inverse:
Arrays.sort(array, Collections.reverseOrder());
-> C'est une méthode statique dans la classe Collections qui appellera en outre une classe interne d'elle-même pour renvoyer un comparateur inversé.la source
Vous pouvez trier un tableau int avec
Arrays.sort( array )
.la source
Java 8 offre la possibilité d'utiliser des flux qui peuvent être utilisés pour trier
int[] array
comme:Comme mentionné dans doc pour
parallelSort
:Donc, si le tableau d'entrée est inférieur à la granularité (8192 éléments en Java 9 et 4096 en Java 8 je crois), alors
parallelSort
appelle simplement l'algorithme de tri séquentiel.Juste au cas où nous voudrions trier inversement le tableau d'entiers, nous pouvons utiliser le comparateur comme:
Puisque Java n'a aucun moyen de trier les primitives avec un comparateur personnalisé, nous devons utiliser la boxing intermédiaire ou une autre bibliothèque tierce qui implémente un tel tri primitif.
la source
Vous pouvez utiliser la fonction Arrays.sort () .
la source
LA MANIÈRE LA PLUS EFFICACE!
la source
Si vous souhaitez créer vous-même l'algorithme de tri rapide et mieux comprendre son fonctionnement, vérifiez le code ci-dessous:
1- Créer une classe de tri
2- Envoyez votre tableau non trié en
Quicksort
classe3- Sortie
la source
Nous pouvons également utiliser un arbre de recherche binaire pour obtenir un tableau trié en utilisant la méthode de traversée dans l'ordre. Le code a également l'implémentation de l'arbre de recherche binaire de base ci-dessous.
}
la source