Esiste un nome per la seguente struttura dati? Ci sono documenti e citazioni disponibili?Esiste un nome per questa raccolta di strutture di dati di array ordinati?
Un modo to implement un efficiente insieme astratto tipo di dati è quello di avere un insieme di matrici ordinate, dove ogni matrice ha una dimensione unica potenze di 2.
Ad esempio, un insieme di 13 elementi {1, 2, ..., 13} può essere rappresentato da questa raccolta di array ordinati: {[5], [2, 3, 9, 13], [1 , 4, 6, 7, 8, 10, 11, 12]}.
In generale, gli array presenti nella raccolta hanno dimensioni corrispondenti a 1 bit nella rappresentazione binaria della dimensione dell'insieme. La struttura dei dati è efficiente perché inserimento può essere eseguita in ammortizzato O (1) tempo, e ricerca può essere eseguita in O ((log n)) tempo (che è migliore di ricerca lineare). Inoltre, utilizza solo O (log n) perdita di spazio per i puntatori, a differenza di alberi binari bilanciati e B-alberi che utilizzano O (n) spazio in più per i puntatori. Pertanto, quasi tutto lo spazio viene utilizzato per i dati del carico utile.
Ho visto Wikipedia di list of data structures ma non ho trovato una corrispondenza. È vero che il libro Introduction to Algorithms ("CLRS") descrive questa struttura di dati come un problema di compiti a casa nella sezione "Analisi ammortizzata", ma poiché è una domanda piuttosto che un esempio, il libro non dice molto su di esso.
Ho potuto solo pensare al tag "strutture dati". Gradirei suggerimenti per tag pertinenti! – Nayuki
Queste domande esistenti riguardano la stessa struttura dati, ma chiedono informazioni su implementazione e spiegazione: http://stackoverflow.com/questions/2602110/, http://stackoverflow.com/questions/4701433/. So come funziona la struttura dati, quindi sono specificamente alla ricerca di pubblicazioni su questo. – Nayuki