compression

Le
remy
bonjour

je vous propose un algo de compression
avec probabilité de perte info
bicause collisions fct de hachage


en gros

a31354564464..
un entier sur plusieurs octets


b entier
b=sqrt(a)
c=a-b^2

donc a =b^2+c
avec b qui a une taille 2 fois plus petite que a bicause sqrt
ensuite j'écris b+c =d avec d qui a une taille de a/2 toujours bicause sqrt
1 ou 2
donc ensuite je rajoute disons une petite poignées d'octets
qui est le résultat d'une fct de hachage
de la chaine concaténée de b et c


et je l'écris donc d'un point de vue de la taille
a= 100 octets
b+c=d 50 octets+1 ,2,3, 10 octets de la fct de hachage
à étudier de plus près

50+10<100

pour décompresser
(d-x)+x je calcule la fct de hachage puis vérifie avec le résultat
si oui ça roule (d-x)^2+x=a
sinon x++;

et comme dab s'est récursif


qd pensez vous ?
cela vaut t'il le coup que je le code
avant d'aller faire un tour dans la vraie vie
loin des maths à titre perso j'ai la flemme trop vieux trop con
tout ça quoi

remy

ps courrier en copie en crypto pour la fct de hachage
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Cenekemoi
Le #583798
bonjour

je vous propose un algo de compression
avec probabilité de perte info
bicause collisions fct de hachage


en gros

a31354564464..............
un entier sur plusieurs octets


b entier
b=sqrt(a)
c=a-b^2

donc a =b^2+c


si:
b=sqrt(a)
alors:
a = b^2
donc:
c = 0

je dois avoir un paramètre mal positionné, mais j'y comprends rien...

--
Cordialement, Thierry ;-)

Gilles Robert
Le #583797
si b=sqrt(a) alors a = b^2 donc c = 0

je dois avoir un paramètre mal positionné, mais j'y comprends rien...


Si a n'est pas un carré, sqrt(a) n'est pas un entier. Je suppose que le
b de remy est la partie entière de la racine carrée de a, et donc que le
c est entre 0 et 2b.

Par contre, je ne vois pas où est le gain entre stocker un nombre sur N
octets ou le stocker sur deux fois N/2 octets.
--
Gilles

remy
Le #588166
un truc rigolo


a=b^2+c
dans le pire des cas c=2*b

donc d=b+c=3*b taille a/2+2

b-c donc b-c+¡ a1±^2+c1 taille a/2+1 +1 pour le signe

maintenant je décide que c sera toujours plus petit que b
parce que a1 a une taille de ((a/2+1))/2 dans ax=bx^2+c2
avec ax=bx+cx


remy
Publicité
Poster une réponse
Anonyme