IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Algorithmes et structures de données Discussion :

Combinaisons possibles de chaines


Sujet :

Algorithmes et structures de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Inscrit en
    Octobre 2005
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 1
    Par défaut Combinaisons possibles de chaines
    Bonjour,
    J'ai un nombre N de chaine de cacatères dont je doit trouver toutes les combinaisons possibles (2N-1). par exemple :

    Pour C1, C2, C3 je devrais trouver :
    C1C2, C1C3, C2C3, C1C2C3.

    Pour X1, X2, X3, X4 je devrais trouver :
    X1X2, X1X3, X1X4, X2X3, X2X4, X3X4, X1X2X3, X1X2X4, X1X3X4, X2X3X4, X1X2X3X4

    J'ai essayé un procedure récursive mais le résultat n'est pas bon au dela de 3 chaines. (J'utilise delphi 7 et un tableau pour contenir les chaines).

    SVP aidez-moi.

  2. #2
    Expert confirmé
    Avatar de PRomu@ld
    Homme Profil pro
    Ingénieur de Recherche
    Inscrit en
    Avril 2005
    Messages
    4 155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 4 155
    Par défaut
    Le mieux est de chercher un peu dans le forum, la génération de combinaisons et de permutations est un sujet assez courant.

    Des solutions peuvent être trouvées ici :

    http://www.developpez.net/forums/sho...d.php?t=228599

  3. #3
    Gf6HqmTW
    Invité(e)
    Par défaut
    Afin de gagner en place et en temps d'execution je te conseil de ne generer que des listes (ou des tables) d'entiers allant de de 1 à N et de stocker des bouts de chaine dans un tableau à N cases, ensuite, à l'aide d'une fonction ou procedure (au choix c'est la meme chose alors osef) tu lis tes chaines en parcourant le tableau aux coordonées dictées par ta chaine :
    exemple
    Code : Ma table de chaine : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    1|A              7|D'            13|Mélancolique  19|T'
    2|Ai             8|Deux          14|Oblique       20|Ta
    3|Aile           9|En            15|Oiseau        21|Tire
    4|Annoncer      10|Et            16|Petit         22|Toi
    5|Bousillé      11|J'            17|Pour          23|Vers
    6|CV            12|Le            18|Que           24|Volait
    Code : Ma liste générée : Sélectionner tout - Visualiser dans une fenêtre à part
    [12; 16; 15; 13; 1; 21; 7; 3; 10; 9; 14; 24; 23; 22; 17; 19; 4; 18; 11; 2; 5; 20; 8; 6]
    Code : Résultat : Sélectionner tout - Visualiser dans une fenêtre à part
    Le Petit Oiseau Mélanclolique A Tire D'Aile Et En Oblique Volait Vers Toi Pour T'Annoncer Que J'Ai Bousillé Ta Deux CV

Discussions similaires

  1. Réponses: 23
    Dernier message: 18/02/2010, 15h42
  2. Réponses: 16
    Dernier message: 20/10/2006, 16h31
  3. trouver les combinaisons possibles d'un tableau ?
    Par titoumimi dans le forum Algorithmes et structures de données
    Réponses: 12
    Dernier message: 20/09/2006, 20h29
  4. toutes les combinaisons possibles
    Par marocleverness dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 29/05/2006, 00h11
  5. Sortir d'un tableau les combinaisons possibles
    Par juelo dans le forum Algorithmes et structures de données
    Réponses: 33
    Dernier message: 26/03/2006, 17h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo