mi sono imbattuto nel Wikipedia page per loro:Comprensione degli alberi di fusione?
e ho letto la classe note file PDF collegati in fondo, ma diventa a mano ondulato sulla struttura dati in sé e va in un sacco di dettagli su la funzione sketch(x)
. Penso che parte della mia confusione sia che i giornali stanno cercando di essere molto generici e vorrei un esempio specifico da visualizzare.
Questa struttura dati è appropriata per la memorizzazione di dati in base a chiavi arbitrarie a 32 o 64 bit integer? Come si differenzia da un albero B? C'è una sezione che dice che è fondamentalmente un B-tree con un fattore di ramificazione B = (lg n)^(1/5)
. Per un albero completamente popolato con chiavi a 32 bit, B sarebbe 2. Questo diventa solo un albero binario? Questa struttura dati ha l'intenzione di utilizzare stringhe di bit molto più lunghe come chiavi?
My Googling non ha rivelato nulla di molto utile, ma gradirei qualsiasi link valido sull'argomento. Questa è davvero solo una curiosità passeggera, quindi non sono stato disposto a pagare i PDF allo portal.acm.org
.
Penso che ottenga 5 chiavi in un nodo ad albero B a 32 bit. –
@ xscott- Si consiglia di esaminare gli alberi di Van Emde Boas (vEB-trees) come alternativa. Gli alberi di fusione corrono in O (lg n/lg lg n), dove gli alberi di vEB vengono eseguiti in tempo O (lg lg n) per operazione, con asintoticamente più veloce. Inoltre, gli alberi di vEB sono sostanzialmente più facili da capire degli alberi di fusione, almeno IMHO. – templatetypedef