Un segment tree e un Fenwick tree (Binary Indexed Tree, BIT) rispondono a query di intervallo (es. somma su [l, r]) e a aggiornamenti puntuali in O(log n), rispetto a O(n) per una scansione ingenua o O(n) per aggiornamenti in un array di somme prefisse.
