JAVA tableau trié sans doublons
usdy
Messages postés
243
Date d'inscription
Statut
Membre
Dernière intervention
-
java4ever -
java4ever -
Bonjour les ami(e)s,
Encore une fois j'ai un souci de programmation java, vous pourrez peut être m'aider...
J'ai un tableau d'entiers, je veux savoir si il y a deux valeurs identiques ou plus dans un tableau trié.
merci de m'aider
Encore une fois j'ai un souci de programmation java, vous pourrez peut être m'aider...
J'ai un tableau d'entiers, je veux savoir si il y a deux valeurs identiques ou plus dans un tableau trié.
merci de m'aider
A voir également:
- JAVA tableau trié sans doublons
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel - Télécharger - Jeux vidéo
- Tableau word - Guide
- Trier un tableau excel - Guide
- Tableau ascii - Guide
1 réponse
Usdy, bonjour
Une réponse à ta question est facile si on sait que les classes de collection de type Set en java ne conservent pas deux valeurs identiques : pas exemple la classe treeSet, si on ajoute deux fois une même valeur, ne va en fait contenir cet élément qu'une fois.
Je ne sais pas si c'est un service, et je te conseille de trouver la solution toi même, mais pour gagner du temps, je te donne un exemple qui illustre ma solution :
Le résultat est :
nombre de doublons dans TABUNIQ 0
nombre de doublons dans TABDOUBLON 2
C'est pas joli ?
Une réponse à ta question est facile si on sait que les classes de collection de type Set en java ne conservent pas deux valeurs identiques : pas exemple la classe treeSet, si on ajoute deux fois une même valeur, ne va en fait contenir cet élément qu'une fois.
Je ne sais pas si c'est un service, et je te conseille de trouver la solution toi même, mais pour gagner du temps, je te donne un exemple qui illustre ma solution :
import java.util.Arrays; import java.util.List; import java.util.Set; import java.util.TreeSet; /** * Coment connaître le nombre de doublons dans un tableau ? * On utilise la particularité de la classe TreeSet * Qui ne stocke pas deux valeurs identiques. */ public class ValeurEnDouble { // deux tableaux d'exemple : private static final Integer[] TABUNIQ = {1, 2, 3, 4, 5, 6,}; private static final Integer[] TABDOUBLON = {1, 2, 2, 3, 4, 4,}; // combien de doublons dans letableau passé en paramètre ? public static int getNbDoublons(Integer[] tab) { List<Integer> li = Arrays.asList(tab); // transforme le tableau en liste Set<Integer> unset = new TreeSet<Integer>(li); // transforme la liste en Set return tab.length - unset.size(); // nombre de doublons } public static void main(String[] args) { System.out.println("nombre de doublons dans TABUNIQ " + getNbDoublons(TABUNIQ)); System.out.println("nombre de doublons dans TABDOUBLON " + getNbDoublons(TABDOUBLON)); } }
Le résultat est :
nombre de doublons dans TABUNIQ 0
nombre de doublons dans TABDOUBLON 2
C'est pas joli ?