Tri d'un tableau java [Résolu]

Messages postés
3
Date d'inscription
lundi 26 avril 2010
Statut
Membre
Dernière intervention
19 octobre 2011
- - Dernière réponse : cs_Julien39
Messages postés
6413
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
17 mai 2018
- 26 oct. 2011 à 07:55
bonjour
il ya peu de temps j'ai bon en java mais depuis quelques mois faute de pratique, je peine avec un tout petit programme.

En fait, j'ai un fichier txt constitué de lignes. Mais ces lignes peuvent se repeter. Mon programme devrait consister à nettoyer le fichier de ces doublons.
D'abord, je separe chaque ligne du fichier et je le met dans un tableau. j'obtiens donc un tableau rempli de toutes les lignes du fichier.
je prends ensuite le premier element du tableau, je verifie s'il n'existe pas dans la suite du tableau. S'il existe, je fais remonter toutes les lignes suivantes.

Aussi sipmle que ça. Mais je retrouve quand meme quelques doublons. je pense alors que c'est un "break" ou un "continue" qu'il faut quelque part, je sais pas où;

voici la partie du tri:
r=0; k=longueur_DU_TABLEAU
while (r<k){
String CHAINE=tab[r];
for(t=r+1;t<k;t++){
if(CHAINE.equals(tab[t])){ // ON ECRASE D'ABORD LE PREMIER DOUBLON
// EN REMONTANT TOUT LE TABLEAU VERS LE HAUT
for(a=t+1;a<k;a++){tab[a]=tab[a+1];}
k--; //ON DECREMENT "k" CAR LE TABLEAU QUI NOUS
} // INTERESSE AURA POUR LONGUEUR k-1

}
r++;}//on incremente "r" pour remonter dans la boucle.

mais ça bloque.
help!help!help!help!help!help! :(
Afficher la suite 

6 réponses

Meilleure réponse
Messages postés
6413
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
17 mai 2018
250
3
Merci
Bonjour,

//Le tableau sur lequel tu veux supprimer les doublons
Object[] tableauEntree;
Set set = new HashSet() ;
set.addAll(Arrays.asList(tableauEntree)) ;
//Le resultat
Object[] resultatSansDoublons = new ArrayList(set).toArray();

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 203 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_Julien39
Messages postés
3
Date d'inscription
lundi 26 avril 2010
Statut
Membre
Dernière intervention
19 octobre 2011
0
Merci
bonjour
ça marche presque mais à la compilation ça m'affiche sous JGrasp le message suivant:
Note: Doublons.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.

pourtant la methode addAll n'est pas obsolette comme je connais.
Commenter la réponse de taguimando
Messages postés
6413
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
17 mai 2018
250
0
Merci
Tu compiles comment ?

Trouves un ide qui le fasse pour toi, sans ca, tu auras souvent des erreurs et tu perdras bêtement du temps. Eclipse ou NetBeans sont gratuits. Je te conseil éclipse.
Commenter la réponse de cs_Julien39
Messages postés
6413
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
17 mai 2018
250
0
Merci
Et je n'ai pas défini les types génériques de Set et HashSet, c'est certainement ce qui pose problème à ton compilateur.
Commenter la réponse de cs_Julien39
Messages postés
3
Date d'inscription
lundi 26 avril 2010
Statut
Membre
Dernière intervention
19 octobre 2011
0
Merci
de toutes façons ça marche meme avec le message d'avertissement. l'operation est unsafe mais le resultat est correct. Sauf que le tri est randomisé mais avec l'interface comparable j'ai essayé de reordonner.
Merci beaucoup

un tien vaut mieux que deux tu l'auras. lol!
Commenter la réponse de taguimando
Messages postés
6413
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
17 mai 2018
250
0
Merci
J'ai accepté la réponse, essaye d'y penser la prochaine fois.

a+
Commenter la réponse de cs_Julien39