|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Futur Membre du Club
![]() Inscription : décembre 2004 Messages : 56 ![]() |
Bonjour,
je cherche une solution algorithmique ou un début de source afin de comparer deux chaine pour trouver le nombre caractère qui diffère. exemples : ch1=>AAA ch2=>BAAA soit 1 caractère diffèrent ch1=>AAA ch2=>ABA soit 1 caractère diffèrent ch1=>AAA ch2=>ABAB soit 2 caractères diffèrents Avez-vous une idée ou un début de raisonnement pour m'aider dans cette galère, merci d'avance.[/b] |
|
|
00
|
|
|
#2 | ||
|
Expert Confirmé
![]() Inscription : septembre 2004 Messages : 2 942 ![]() |
Il faut faire un truc dans le genre de :
Code :
|
||
|
|
00
|
|
|
#3 |
|
Expert Confirmé
![]() Inscription : septembre 2004 Messages : 2 942 ![]() |
La comparaison entre ABBBA et AA doit retourner quoi ?
|
|
|
00
|
|
|
#4 |
|
Futur Membre du Club
![]() Inscription : décembre 2004 Messages : 56 ![]() |
pour moi il n'a rajouté que 3 caractères qui diffèrent par AA
mais peut-être que se raisonnement est faux. ma problématique est la suivante : un utilisateur ne peux modifier le texte pricipale si il ne modifie au plus 15 caractères rapport au texte principale sachant qu'il peut rajouter un caractère en début,fin et milieu de mot. |
|
|
00
|
|
|
#5 |
|
Nouveau Membre du Club
![]() |
Ta condition fonctionnelle est TOUTE pourrie
ca veut dire que je peux modifier "BONJOUR" en "xBxOxNxJxOxUxRxxxxxx" mais pas "Rue verte" en "Rue de la marche des rois de Flandre" Tout ce que tu peux faire, c'est pour chaque lettre de l'ancienne valeur voir si elle était là avant, et compter les nouvelles.... |
|
|
00
|
|
|
#6 | |
|
Futur Membre du Club
![]() Inscription : décembre 2004 Messages : 56 ![]() |
Citation:
et dans l'autre 32 caractères modifiés espace compris |
|
|
|
00
|
|
|
#7 |
|
Futur Membre du Club
![]() Inscription : décembre 2004 Messages : 56 ![]() |
quel serait alors la solution la plus adéquote pour compter les caractères modifiés d'une chaine par rapport à une autre
|
|
|
00
|
|
|
#8 |
|
Inactif
Inscription : décembre 2003 Messages : 1 946 ![]() |
Attention : Multi-posts interdits sur ce site !
Avant de chercher une requête qui fait le boulot, il faudrait définir un algorithme, et avant l'algorithme il faudrait des règles précises de mesure (et tu as l'air de ne pas savoir toi-même...) ; il sera toujours temps de l'implémenter après ! |
|
|
00
|
|
|
#9 | |
![]() ![]() Inscription : janvier 2004 Messages : 15 861 ![]() |
Citation:
|
|
|
|
00
|
|
|
#10 | ||
|
Inactif
Inscription : décembre 2003 Messages : 1 946 ![]() |
Citation:
Sinon dans le forum algorithme, il y a le même post ! |
||
|
|
00
|
|
|
#11 |
![]() ![]() Inscription : janvier 2004 Messages : 15 861 ![]() |
bon, ça va va c'est pas génant, c'est aussi de l'algo
|
|
|
00
|
|
|
#12 |
|
Nouveau Membre du Club
![]() |
Bah....
Pour toute POSITION de 0 à longeurNouvelleChaine-1 si NouvelleChaine[ POSITION ] n'existe pas dans AncienneChaine alors NbLettresNouvelles := NbLettresNouvelles + 1 fin pour toute si NbLettresNouvelles > 15 alors CA VA PAS question à 100 balles : si avant il y avait 2 A et que j'en ajoute 1, est ce une nouveauté ? Dans ce cas mon algo simpliste est super faux 8) Mais je ne comprend surtout pas le besoin fonctionnel auquel que tu cherches à répondre. On devrait pouvoir faire mieux que cette drole de fonction foireuse que nous cherchons à écrire.... |
|
|
00
|
|
|
#13 |
|
Futur Membre du Club
![]() Inscription : décembre 2004 Messages : 56 ![]() |
Apparement je dois appliqué l'algorithme de Levenshtein Distance
http://www.merriampark.com/ld.htm#ALGORITHM |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com