Partage
  • Partager sur Facebook
  • Partager sur Twitter

{java} faire une combinaison

et supprimer les doublons

    2 mars 2007 à 14:02:19

    salut mes amis
    j'ai malheureusement encore un problème avec et comment faire la combinaison des éléments d'une liste et supprimer les doublons


     ArrayList F= new ArrayList ();
     for (int i=0;i<A.size();i++){
       for (int j = i + 1; j < A.size(); j++) {
         String Q1=A.get(i).toString();
         String Q2=A.get(j).toString();
         if ( ! Q1.equals(Q2) ){
           String  Q3=Q1.concat(Q2);
           F.add(Q3);
         }
      }
    }


    cette méthode par exemple marche seulment si j'ai une liste qui contient {a,b,c} alors j'aurais une liste F {ab,ac,bc}
    mais si j'ai une liste {ab,ac,bc,bd,cd} et je voulais faire la combinaison normalemnt j'aurais {abc,acb,bcd,bdc} et puis je supprime les doublons alors j'aurais {abc,bcd}

    meme si j'ai une liste avec {abd,acd,abc} apres la combinaison j'aurais {abdc}

    merci bien de m'avoir m'aider
    • Partager sur Facebook
    • Partager sur Twitter
      3 mars 2007 à 16:24:57

      je m'avance et je pense que j'ai trouvé la solution mais je coince sur une condition que j'ignore de l'ajouter dans le code par exemple si j'ai une liste {ABC,ABD.BCE,ABF}
      essayez me comprendre
      car le code que je vais poster seulment une idée générale
      j'ai mis comme code



      for i = 1 jusqu'à 3 faire
      X=T1[i]
      for j= i+1 jusqu'à3 faire
      Y=T1[j]
      [COLOR="Red"] je vais séparer Y alors j'aurais une liste T2={A,B,D}[/COLOR]
      je vais parcourir la liste
      while (i<=Té.size()){
      if (T2[K] appartient à X)
      remove
      K++;
      sinon K=T2.size();
      }
      concacténation x avec T2 ( le reste de la liste T2 )

      j'ai appliqué ça qu'avec i=1;alors j=2 T1[1]=ABC et T2[2]=ABD

      le problème que je n'arrive pas a ajouter la condition si je serais à j=3 T2[3]=BCE
      on voit B n'appartient pas à X alors je sote à j égale 4 ainsi de suite jusqu'à la fin de la liste T2

      j'espere que vous m'avez bien comprendre mes amis
      merci encore de bien vouloir m'aider
      • Partager sur Facebook
      • Partager sur Twitter

      {java} faire une combinaison

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown