Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2542 connectés 

  FORUM HardWare.fr
  Programmation
  C

  Dénombrement

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Dénombrement

n°1897376
sneakz
Posté le 21-06-2009 à 16:43:57  profilanswer
 

Bonjour,
 
Je cherche à dénombrer des valeurs dans un tableau.
 
Je lis un tableau avec des valeurs numériques 1,1,3,1,45,5,12,36,1,2,45,5,5,12,88 etc. par exemple et je souhaite dans mon programme compter le nombre de 1, de 3, de 5 etc.  
 
Comment procéder ?
 
Merci pour votre entraide.

mood
Publicité
Posté le 21-06-2009 à 16:43:57  profilanswer
 

n°1897391
jagstang
Pa Capona ಠ_ಠ
Posté le 21-06-2009 à 18:09:56  profilanswer
 

façon simple. si tu sais que tes nombres sont de 1 à 88 (comme ici) il suffit d'utiliser la valeur comme pointeur dans un autre tableau :

 

p.ex en pseudo code

 

v[] = {1,1,1,4,4,5,6,7,1,2,4,7,9}
o[13] = {0} // vecteur d'occurence de taille v

 

pour chaque element dans v[]
  o[v[i]]++

 

voilà je ne sais pas si cette méthode à un nom. Bien sûr cela est peu efficace si tu as peu de nombres dans un interval très grand (consommation de mémoire)

 


edit:ortho


Message édité par jagstang le 21-06-2009 à 18:10:28

---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
n°1897435
sneakz
Posté le 21-06-2009 à 22:27:52  profilanswer
 

Merci jagstang mais j'avoue que je n'ai pas tout compris.

n°1897451
jagstang
Pa Capona ಠ_ಠ
Posté le 21-06-2009 à 23:13:08  profilanswer
 

rien de compliqué pourtant. tu utilises un second vecteur initialisé à 0. et lorsque tu rencontre un nombre N, tu incrémente l'indice N de ton tableau.  


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
n°1897524
Trap D
Posté le 22-06-2009 à 10:13:44  profilanswer
 

C'est appelé le tri du panier ou du facteur, ne fonctionne évidemment que sur des entiers.

n°1897741
jagstang
Pa Capona ಠ_ಠ
Posté le 22-06-2009 à 16:33:29  profilanswer
 

c'est ça. Mais sans trier.


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
n°1897791
Turkleton
I don't quite understand you
Posté le 22-06-2009 à 18:27:06  profilanswer
 

Pas mal du tout comme technique, faudra que je m'en souvienne  :jap:  


---------------
If you think it could look good, then I guess it should
n°1897857
Trap D
Posté le 22-06-2009 à 22:44:47  profilanswer
 

jagstang >> ben si on trie quand même, pour obtenir le tableau trié dans le tableau initial, il suffit de parcourir le tableau obtenu à partir du début, si tu rencontre une case à 0  tu passes, sinon tu recopies dans le tableau initial l'index de la case du tableau trié autant de fois que le contenu de cette case.

n°1897912
sneakz
Posté le 23-06-2009 à 08:40:01  profilanswer
 
n°1897953
jagstang
Pa Capona ಠ_ಠ
Posté le 23-06-2009 à 09:41:36  profilanswer
 

Trap D a écrit :

jagstang >> ben si on trie quand même, pour obtenir le tableau trié dans le tableau initial, il suffit de parcourir le tableau obtenu à partir du début, si tu rencontre une case à 0  tu passes, sinon tu recopies dans le tableau initial l'index de la case du tableau trié autant de fois que le contenu de cette case.


sans faire la dernière étape que tu cite, on ne trie pas, on compte simplement les occurences.


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
mood
Publicité
Posté le 23-06-2009 à 09:41:36  profilanswer
 

n°1898395
Trap D
Posté le 23-06-2009 à 18:41:24  profilanswer
 

jagstang a écrit :


sans faire la dernière étape que tu cite, on ne trie pas, on compte simplement les occurences.


On veut absolument avoir le dernier mot  :sarcastic:

n°1898429
Joel F
Real men use unique_ptr
Posté le 23-06-2009 à 20:11:17  profilanswer
 


 
La partie complexité vaut son pesant de WTF [:prozac]

n°1899257
jagstang
Pa Capona ಠ_ಠ
Posté le 25-06-2009 à 17:37:54  profilanswer
 

Trap D a écrit :


On veut absolument avoir le dernier mot  :sarcastic:


Pas vraiment non, c'est la réalité  [:mlc]


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  Dénombrement

 

Sujets relatifs
Petit probleme de denombrementproblème de dénombrement (ou personnes nintelligentes wanted)
[SQL]Dénombrement 
Plus de sujets relatifs à : Dénombrement


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)