Título: Comprimir cadena de numeros hexadecimales Publicado por: yercaos en 22 Febrero 2011, 17:08 pm hola a todos del foro tengo un pequeño incoveniente quisiera poder comprimir y descomprimir (sin perdida) una cadena de numeros hexadecimales
supongamos q tengo 37BE818097EF6166A80F8171A6F84AD73F6157F99F71575F3639CF66BAC podria convertirse en ABS5448s3SOE.. es decir usando cualquier letra del abecedario(a-z, 0 -9 )...que la longitud de la cadena resultado sea lo mas minimo posible ¿alguna idea? Título: Re: Comprimir cadena de numeros hexadecimales Publicado por: APOKLIPTICO en 22 Febrero 2011, 18:22 pm Podés hacer algo muy simple: Podés tomar los números como base 16, que es en lo que están por lo que veo y pasarlos a base 38 (a-z y 0-9) y de esa manera, sacas mínimo común múltiplo entre 16 y 38 que es 304 y vas agarrando de a 19 bytes en formato hexadecimal, haces un cambio de base y los convertis en 8 bytes en base 38. Sin embargo, lo que más te recomiendo yo, es o bien agregar caracteres hasta llegar a 40 (ya que el mcm de 16 y 40 es 80 y sólo necesitas 5 bytes en base 16 para sacar 2 en base 40) o quitar hasta llegar a 32. Esto es mejor porque sino vas a tener que utilizar como mínimo 19 bytes para conseguir 8.
Un abrazo APOKLIPTICO. |