[R] Occurence

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
sozary
Niveau 6
Niveau 6
Messages : 274
Enregistré le : lun. 20 janv. 2014 19:17
Status : Hors ligne

[R] Occurence

#1

Message par sozary »

Bonjour à tous!
Pour la réalisation de l'algorithme de Huffman, je nécessiterais l’occurrence des lettres dans une phrase, tel que:
--> Phrase: salut a toi
tableau occurrence: S:1; A:2; L:1; U:1; T: 2; O:1; I:1.
Y a il une fonction qui existe déjà? Merci d'avance!
Modifié en dernier par sozary le ven. 08 août 2014 10:20, modifié 1 fois.
"Là où la volonté est grande, les difficultés diminuent.", Niccolò Machiavelli
Avatar du membre
timmalos
Niveau 11
Niveau 11
Messages : 1970
Enregistré le : dim. 18 mai 2008 15:16
Status : Hors ligne

Re: [..] Occurence

#2

Message par timmalos »

Voici une fonction qui retourne le nombre de fois qu'un caractère est trouvé dans une chaine (Insensible à la case contrairement à StringSplit)

Il vous suffira de créer un tableau contenant tous les caractères que vous souhaitez calculer les occurences (Uniquement les 26 lettres de l'alphabet dans votre cas) et d'appeler cette fonction pour chacune.

Code : Tout sélectionner

Func _Occurrence($s_text, $s_char)
    Return StringLen($s_text) - StringLen(StringReplace($s_text, $s_char, ''))
EndFunc ;==>_Occurrence1
 
Avatar du membre
PandiPanda
Membre émérite
Membre émérite
Messages : 656
Enregistré le : mar. 19 juil. 2011 14:03
Localisation : Bruxelles
Status : Hors ligne

Re: [..] Occurence

#3

Message par PandiPanda »

Bonsoir,
Il manquerai l'espace non ?

j'ai fait ceci vite fait ...
► Afficher le texte
La seule moralité qui tienne dans un monde cruel est la chance. Impartiale. Équitable. Vraie
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Occurence

#4

Message par mikell »

► Afficher le texte
Image
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2515
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Occurence

#5

Message par jguinch »

Même principe, à peine différent :
► Afficher le texte
Edit : en fait, je viens de m'apercevoir que mon code est quasiment le même que le tien Mikell ! :D
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Avatar du membre
orax
Modérateur
Modérateur
Messages : 1479
Enregistré le : lun. 23 mars 2009 04:50
Localisation : ::1
Status : Hors ligne

Re: [..] Occurence

#6

Message par orax »

► Afficher le texte???
Arfff !! Visiblement le mien ne semble pas bien rapide… :cry:
De petits détails peuvent faire toute la différence. — Quand la boule de neige commence à rouler… poussez-la. (Columbo)
Avatar du membre
sozary
Niveau 6
Niveau 6
Messages : 274
Enregistré le : lun. 20 janv. 2014 19:17
Status : Hors ligne

Re: [..] Occurence

#7

Message par sozary »

Ah! Merci à tous pour vos réponses! J'ai pris le code de jguinch car c'est celui que j'ai le mieux compris! Par contre le code d'Orax, j'ai vraiment rien compris, mais bon, c'est l'intention qui compte :D!
Merci encore!
"Là où la volonté est grande, les difficultés diminuent.", Niccolò Machiavelli
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2515
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [R] Occurence

#8

Message par jguinch »

Autre variante avec tri intégré (croissant par nombre d'occurences)
► Afficher le texte
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Répondre