JAVA - Tableaux Aide svp
Fermé
JavaNoob
-
6 févr. 2009 à 07:53
Marco la baraque Messages postés 996 Date d'inscription vendredi 9 mai 2008 Statut Contributeur Dernière intervention 5 novembre 2009 - 6 févr. 2009 à 14:08
Marco la baraque Messages postés 996 Date d'inscription vendredi 9 mai 2008 Statut Contributeur Dernière intervention 5 novembre 2009 - 6 févr. 2009 à 14:08
A voir également:
- JAVA - Tableaux Aide svp
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel football - Télécharger - Jeux vidéo
- Java apk - Télécharger - Langages
- Tableaux croisés dynamiques - Guide
- Java décompiler - Télécharger - Langages
2 réponses
tarek_dotzero
Messages postés
817
Date d'inscription
jeudi 19 juillet 2007
Statut
Membre
Dernière intervention
12 avril 2022
121
6 févr. 2009 à 10:11
6 févr. 2009 à 10:11
Vous devez utiliser un algorithme de tri, dans lequel: la condition se fait sur le tableau des notes mais les changements de positions se font sur les deux tableaux, par exemple:
C'est vous ne voulez pas changer les tableaux d'origine, vous devez creer une copie.
int j = 0; while(j < tabNotes.lenght - 1) { // La condition sur la table tanNotes if(tabNotes[j] > tabNotes[j+1]) { // Les changements pour les deux int intBuffer; intBuffer = tabNotes[j]; tabNotes[j] = tabNotes[j + 1]; tabNotes[j + 1] = intBuffer; String strBuffer; strBuffer = tabNoms[j]; tabNoms[j] = tabNoms[j + 1]; tabNoms[j + 1] = strBuffer; j = 0; }else { ++j; } }
C'est vous ne voulez pas changer les tableaux d'origine, vous devez creer une copie.
Marco la baraque
Messages postés
996
Date d'inscription
vendredi 9 mai 2008
Statut
Contributeur
Dernière intervention
5 novembre 2009
329
6 févr. 2009 à 14:08
6 févr. 2009 à 14:08
Bonjour,
Es-tu obligé d'utiliser des tableaux, parce que ce n'est pas super approprié ici.
Une des solutions, c'est d'utiliser une sortedMap où tes clés seraient tes notes, et tes éléments les personnes qui les ont eu. L'inconvénient (et il est énorme), c'est que SortedMap étant une map, les clés doivent être uniques (autrement dit chaque note ne doit être attribuée qu'une seule fois maximum).
Une seconde solution, c'est de créer ta propre classe Resultat contenant deux attributs (et au moins des getters) :
- le nom de la personne ayant reçue la note
- la valeur de la note
Ensuite, il faudra que cette classe implémente l'interface Comparable (pour ordonner plusieurs instances de Resultat en fonction des notes).
Ensuite, tu crées tout simplement une liste de Resultat en parcourant ton fichier initial, puis tu tries cette liste grâce à Collections.sort(taListe).
Cordialement,
Es-tu obligé d'utiliser des tableaux, parce que ce n'est pas super approprié ici.
Une des solutions, c'est d'utiliser une sortedMap où tes clés seraient tes notes, et tes éléments les personnes qui les ont eu. L'inconvénient (et il est énorme), c'est que SortedMap étant une map, les clés doivent être uniques (autrement dit chaque note ne doit être attribuée qu'une seule fois maximum).
Une seconde solution, c'est de créer ta propre classe Resultat contenant deux attributs (et au moins des getters) :
- le nom de la personne ayant reçue la note
- la valeur de la note
Ensuite, il faudra que cette classe implémente l'interface Comparable (pour ordonner plusieurs instances de Resultat en fonction des notes).
Ensuite, tu crées tout simplement une liste de Resultat en parcourant ton fichier initial, puis tu tries cette liste grâce à Collections.sort(taListe).
Cordialement,