Capisco che gli alberi di segmento può essere utilizzato per trovare la somma di sub matrice di . E questo può essere fatto in tempo secondo il tutorial qui .O ( registro n )
Tuttavia, non sono in grado di dimostrare che il tempo di interrogazione è effettivamente . Questo link (e molti altri) dicono che possiamo dimostrare che ad ogni livello, il numero massimo di nodi elaborati è e quindi .4 O ( 4 log n ) = O ( log n )
Ma come possiamo dimostrarlo, forse per contraddizione?
E se fosse così, se dovessimo usare gli alberi di segmenti per la somma a distanza di array di dimensioni superiori, come sarebbe estesa la dimostrazione?
Ad esempio, posso pensare di trovare una somma di matrice secondaria dividendo la matrice originale in 4 quadranti (simile a dimezzare gli intervalli in matrici lineari) costruendo un albero di segmenti di quadrante ma la prova mi sfugge.