begin process at 2010 03 19 02:33:31
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Maths & Algorithmes

 > 

Combinaison des entiers


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Combinaison des entiers

lundi 30 août 2004 à 11:14:24 | Combinaison des entiers

ghada


J'aime bien avoir un algorithme qui permet de générer toutes les combinaisons d'une liste d'entiers c'est à dire 2^n avec n le nombre d'entiers de la liste. par exemple pour 1,2,3 je génére 1,2,3,12,13,23
lundi 30 août 2004 à 11:45:08 | Re : Combinaison des entiers

MetalDwarf

Je connais un algorithme qui fait ca, mais il est recursif et de complexite exponentielle (ce qui est inevitable puisqu il y a 2^n listes possibles).
Il se base sur le fait que si tu prend un nombre de la liste de base (1,2,3,...n), toutes les combinaisons sont celles sans ce nombre + les memes mais avec ce nombre.
A partir de la l implementation vient facilement, tout du moins en Caml (j ai fait cet algo cet annee en cours).

Si je me souviens bien en caml ca donne :

let rec ajout a l = a::l;;

let rec combin l=
match l with
|[]->[]
|a::reste->let l2=combin reste in (map (ajout a) l2)@l2;;

Je n en suis plus tres sur mais ca doit etre ca.
Maintenant si tu comprends le Caml ca devrais aller
lundi 30 août 2004 à 11:49:22 | Re : Combinaison des entiers

JCDjcd

Oui il est vrai que l'on peut le faire par recursivite, c'est d'ailleurs le meme principe de la formule de Pascal (avec les Cnp).
lundi 30 août 2004 à 13:48:50 | Re : Combinaison des entiers

magic_Nono

Membre Club
avec CPlex, ça le fait tt seul


Magic Nono: l'informagicien!
lundi 30 août 2004 à 13:49:51 | Re : Combinaison des entiers

pinderlot

euh... ca fait pas 2^n combinaisons...
-----------------------------------------------
Tout ce qui ne tue pas rend plus fort !
lundi 30 août 2004 à 13:59:36 | Re : Combinaison des entiers

JCDjcd

Ben si, le nombre de sous ensemble d'un ensemble a n elements est 2^n, d'ailleurs c'est pourquoi on note les sous parties de N, 2^N (par abus) et de R, 2^R (toujours par abus). (il est vrai que dans l'exemple avec 1,2,3, il manque des combinaisons : {} et {1,2,3}, ensemble vide, ou l'univers)
lundi 30 août 2004 à 15:01:04 | Re : Combinaison des entiers

magic_Nono

Membre Club
1 2 3
2 3 1
3 1 2
3 2 1
2 1 3
1 3 2

2^3=8
ici 6 combinaisons !

=2*3? je C plus, j'ai horreur des math

Magic Nono: l'informagicien!
lundi 30 août 2004 à 16:12:34 | Re : Combinaison des entiers

JCDjcd

ici il n'y a que qu'un ensemble, puisque l'ordre ne compte pas.
les 8 combinaisons sont :
#1 : {}
#2 : {1}
#3 : {2}
#4 : {3}
#5 : {1,2}
#6 : {1,3}
#7 : {2,3}
#8 : {1,2,3}

de toute maniere il est certain que le nombre de sous ensemble est 2^n ( on ne va pas refaire les mathematique), cela se demontre tres facilement.
lundi 30 août 2004 à 16:13:51 | Re : Combinaison des entiers

JCDjcd

>> Magic Nono

ce que tu as fait la, je pense que c'est les permutations et non les combinaisons, auquel cas il y en a effectivement 6.
lundi 30 août 2004 à 16:18:21 | Re : Combinaison des entiers

magic_Nono

Membre Club
ui, C bien ce qu'il me semblait....

merci

Magic Nono: l'informagicien!

1 2 3

Cette discussion est classée dans : entiers, liste, combinaison


Répondre à ce message

Sujets en rapport avec ce message

Somme d'entiers [ par PiraTmaT ] Bonjour,Je dispose d'une suite d'un certain nombre d'entiers aléatoires inférieurs ou égaux à 100.Je dois déterminer s'il est possible de regrouper un erreur de compilation [ par richard97 ] Bonjour  J'ai un projet à faire en C++Voici l'énoncé:SUJET:Pour la création d'entiers arbitrairement grands, l'utilisateur pourra entrer une chaîne (d [LangageC]Tri d'une liste chainée d'entiers. [ par sleyze ] Bonsoir, quelqu'un pourrait il me donner une fonction permettant de trier une liste chainée L dans l'ordre croissant en utilisant un tri autre que le grands nombres [ par freeskieuse ] Bonjour,je suis debutante en C++, j'ai un projet à faire, mais je ne sais pas du tout comment gèrer...SUJET:Pour la création d'entiers arbitrairement Tri indirect [ par Darksnakes ] Bonjour ,voila j'ai un probleme sur l'ecriture en c d'un tri indirect.ce tri consites à declarer un tableau d'entiers de même taille que le tableau M sur la concaténation de 2 liste chainné [ par nabilhoumani ] comment fair la concaténation de 2 liste chainné  vc c++  j'ai deja créé une class noeu et 1 autre liste kelle es friend de la premier mai j'arrive pa Liste Chainé en C++... [ par NitRic ] Bonjour, j'aimerais si possible un petit exemple ou bien un site qui parle des Liste Chainé en C++, pour la créée c'est ok mais c avec le fonctionneme Liste (vc++) [ par C++ ] Salut, je veux generer un nombre de 1 a 10 dans une listbox!merci d avance Comment afficher la liste des fichiers dans le composant List View [ par kanimana ] Bonjour Svp, indiquez moi la fonction qui permettera d'afficher les fichier contenu dans un répertoire dans le composant ListView, avec les détails liste de fonctions [ par niconico ] quelqu'un aurait-il l'adresse d'un site ou je pourrait trouver la liste des fonctions en C++; ou au moins celles relatives a la creation, modification


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,014 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales