La codifica Quadtree ci permette di descrivere un'immagine $2^N×2^N$ in bianco e nero come sequenza di bit (0 e 1). Queste sequenze devono essere lette da sinistra a destra in questo modo:
- il primo bit si occupa dell'intera regione $2^N×2^N$;
- "0" indica una suddivisione:
- la regione attuale $2^n×2^n$ è divisa in 4 sottoregioni di dimensione $2^{n - 1}×2^{n - 1}$,
- i bit successivi contengono la descrizione delle sottoregioni in alto a sinistra, in alto a destra, in basso a sinistra e in basso a destra - in quell'ordine;
- "10" indica che la regione corrente contiene solo pixel neri;
- "11" indica che la regione corrente contiene solo pixel bianchi.
<imgclass="img-responsive center-block"alt="Immagine 4x4 con segni colorati che indicano il luogo in cui può verificarsi la divisione"src="https://cdn.freecodecamp.org/curriculum/project-euler/quadtree-encoding-a-simple-compression-algorithm.gif"style="background-color: white; padding: 10px;"/>
Questa immagine può essere descritta da diverse sequenze, ad esempio: "<strong><spanstyle="color: red">0</span></strong><strong><spanstyle="color: blue">0</span></strong>10101010<strong><spanstyle="color: green">0</span></strong>1011111011<strong><spanstyle="color: orange">0</span></strong>10101010", di lunghezza 30, o "<strong><spanstyle="color: red">0</span></strong>10<strong><spanstyle="color: green">0</span></strong>101111101110", di lunghezza 16, che è la sequenza minima per questa immagine.