Comparer deux tableaux
Fermé
sss
-
Modifié par sss le 22/11/2012 à 20:51
Heliotte Messages postés 1491 Date d'inscription vendredi 26 octobre 2012 Statut Membre Dernière intervention 28 janvier 2013 - 23 nov. 2012 à 07:58
Heliotte Messages postés 1491 Date d'inscription vendredi 26 octobre 2012 Statut Membre Dernière intervention 28 janvier 2013 - 23 nov. 2012 à 07:58
A voir également:
- Comparer deux tableaux en c
- Fusionner deux tableaux excel - Guide
- Tableaux croisés dynamiques - Guide
- Deux ecran pc - Guide
- Deux comptes whatsapp - Guide
- Itinéraire google map entre deux adresses - Guide
2 réponses
Heliotte
Messages postés
1491
Date d'inscription
vendredi 26 octobre 2012
Statut
Membre
Dernière intervention
28 janvier 2013
92
22 nov. 2012 à 23:49
22 nov. 2012 à 23:49
le principe de comparaison est, à mon avis, incorrect.
Algorithme:
Algorithme:
Admettons tableaux t1{1, 2, 3} et t2{3, 4, 5} POUR i = 0; i<TAILLE(t1) ; i++ ..POUR j = 0; j<TAILLE(t2) ; j++ ....SI t1(i) == t2(j) ALORS ......existe=VRAI; ....FIN SI ..FIN j FIN i
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 019
Modifié par KX le 23/11/2012 à 01:10
Modifié par KX le 23/11/2012 à 01:10
Tout simplement avec deux boucles for each :
Remarque : j'ai mis Collection, parce que c'est plus général que Vector, ça permettra par exemple de comparer aussi un Vector avec des List, etc.
En toute rigueur, on devrait quand même imposer que les deux Collection aient le même type de donnée, ce qui donne une formulation paramétrée :
public static boolean compare(Collection c1, Collection c2) { for (Object o1 : c1) // Pour chaque objet de c1 for (Object o2 : c2) // Pour chaque objet de c2 if ((o1==null && o2 ==null) || (o1!=null && o1.equals(o2)) return true; return false; }
Remarque : j'ai mis Collection, parce que c'est plus général que Vector, ça permettra par exemple de comparer aussi un Vector avec des List, etc.
En toute rigueur, on devrait quand même imposer que les deux Collection aient le même type de donnée, ce qui donne une formulation paramétrée :
public static <E> boolean compare(Collection<E> c1, Collection<E> c2) { for (E e1 : c1) for (E e2 : c2) if ((e1==null && e2 ==null) || (e1!=null && e1.equals(e2)) return true; return false; }La confiance n'exclut pas le contrôle
Heliotte
Messages postés
1491
Date d'inscription
vendredi 26 octobre 2012
Statut
Membre
Dernière intervention
28 janvier 2013
92
23 nov. 2012 à 07:58
23 nov. 2012 à 07:58
Merci pour ces précisions KX
Je suis encore apprenti en JAVA
Je suis encore apprenti en JAVA