Post contrassegnati da tag ‘code

16
Nov

Run-Length Encoding

Questo è il primo di una serie di articoli (forse, se ne avrò voglia e tempo) inerenti alla compressione dei dati. La cosa verrà trattata nel modo più pragmatico possibile riducendo all’osso i simbolini matematici.

Per iniziare ho scelto una forma di codifica senza perdita usata generalmente nei fax (insieme ad altra “roba” che vedremo in seguito). L’idea alla base è molto semplice: sequenze di dati contigue ripetute vengono trasformate in una coppia (simbolo, #occorrenze). Ad esempio la stringa aaabbccccc sarà rappresentata da (a,3)(b,2)(c,5). Tra i formati basati su questo principio ricordiamo PackBits di Apple, introdotta con il MacPaint ed usata a volte nei file tiff. Vediamone ora una semplice implementazione in Python.

Continua a leggere ‘Run-Length Encoding’

08
Nov

Refactor my code!

Volevo segnalarvi questo utilissimo sito. Il servizio offerto lo avrete già intuito dal titolo: voi postate del codice e qualcuno lo “risistema” per voi.

Quindi se siete ancora indecisi sulla scelta di design fatta nell’ultima implementazione e volete confrontarvi con altri sviluppatori avete trovato un buon punto di incontro.

Have fun!

PS: Grazie a Stefano per la segnalazione.