NOTA : la domanda è stata ribadita nelle mie risposte: supponendo ora che possiamo trovare gli antenati fratelli più bassi in tempo, l'ANN può davvero essere eseguita in O ( log n ) ?
I quadrifici sono indici spaziali efficienti. Ho un enigma con l'implementazione di una ricerca del vicino più vicino in una struttura quadrata compressa come descritto in [2]. (Senza entrare nei dettagli, la ricerca sta andando dall'alto verso il basso lungo i cosiddetti quadrati equidistanti, che termina nel nodo di coda di un percorso equidistante. Nell'immagine allegata questo potrebbe essere uno qualsiasi dei nodi nel sud-est pieno di punti.)
Affinché il loro algoritmo funzioni, è necessario mantenere per ciascun nodo - un quadrato con almeno due quadranti non vuoti - puntatori per ciascun nodo antenato più basso (più vicino nella gerarchia) in ciascuna delle quattro direzioni (nord, ovest, sud , est). Questi sono indicati dalle frecce verdi per l'antenato verso ovest dei nodi (la freccia punta al centro della piazza degli antenati).
L'articolo afferma che questi puntatori possono essere aggiornati in O (1) durante l'inserimento e l'eliminazione di punti. Tuttavia, quando si osserva l'inserimento del punto verde, sembra che sia necessario aggiornare qualsiasi numero arbitrario di puntatori, in questo caso sei.
Spero in un trucco per fare questo aggiornamento del puntatore in tempo costante. Forse esiste una forma di riferimento indiretto che può essere sfruttata?
MODIFICARE:
La relativa sezione della carta è 6,3, dove si legge: "se il percorso ha curve, quindi oltre al antenati bassi di q , dovremmo anche considerare per ciascuno dei 2 d indicazioni the antenato più basso di q che va in quella direzione [...] Trovare questi quadrati da q può essere fatto in O ( 1 ) tempo per quadrato se associamo ulteriori 2 d puntatori a ciascun quadrato in Q 0indicando i suoi antenati più vicini per ogni direzione. Questi puntatori possono anche essere aggiornati in tempo durante l'inserimento o l'eliminazione di un punto. "
[2]: Eppstein, D. e Goodrich, MT e Sun, JZ, "The Skip Quadtree: una struttura dati dinamica semplice per dati multidimensionali", in Atti del ventunesimo simposio annuale sulla geometria computazionale, pagg. 296—305 , 2005.