Algo qui supprime les doublons d'une collection
Bonjour,
je souhaite supprimer les doublons d'une collection, toutefois mon algo ne fonctionne pas bien, et je sèche un peu là :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
| public static void main (String [] args)
{
Vector <Integer> victor = new Vector <Integer> () ;
victor.add (100) ;
victor.add (200) ;
victor.add (300) ;
victor.add (400) ;
victor.add (100) ;
victor.add (500) ;
victor.add (600) ;
victor.add (600) ;
victor.add (600) ;
victor.add (100) ;
for (Integer ig : victor)
{
System.out.print (ig + " ") ;
}
System.out.println () ;
int taille = victor.size () ;
for (int i = 0; i < taille; i ++ )
{
for (int n = 0; n < taille; n ++ )
{
if (n == i)
{
continue ;
}
if (victor.elementAt (i) == victor.elementAt (n))
{
victor.remove (n) ;
taille -- ;
}
}
}
for (Integer ig : victor)
{
System.out.print (ig + " ") ;
}
} |
C'est directement testable dans votre IDE favori ;)
Comme on supprime des éléments du vector sa taille change.
J'aimerais éviter de devoir passer par un 2e vector, car là ce n'est qu'un exemple, mais le vectro sur lequel je travaille est assez grand.
A vot' bon coeur m'sieurs dames ;)