Sto imparando a conoscere alberi radix (ovvero tentativi compressi) e Patricia, ma sto trovando informazioni contrastanti sul fatto che siano effettivamente le stesse. Un albero radix può essere ottenuto da un trie normale (non compresso) unendo i nodi con i loro genitori quando i nodi sono l'unico figlio. Questo vale anche per i tentativi di Patricia. In che modo le due strutture dati sono diverse?
Ad esempio, NIST elenca i due come uguali:
Albero di Patricia
(struttura dati)
Definizione: una rappresentazione compatta di un trie in cui qualsiasi nodo che è figlio unico viene unito al suo genitore.
Conosciuto anche come radix tree.
Molte fonti sul web rivendicano lo stesso. Tuttavia, a quanto pare Patricia ci prova è un caso speciale di alberi radix. La voce di Wikipedia dice:
I tentativi PATRICIA sono tentativi radix con radix uguale a 2, il che significa che ogni bit della chiave viene confrontato individualmente e ogni nodo è un ramo a due vie (cioè sinistra contro destra).
Non lo capisco davvero. La differenza è solo nel modo in cui vengono effettuati i confronti durante le ricerche? Come può ciascun nodo essere un "ramo a due vie"? Non dovrebbero esserci al massimo ALPHABET_SIZE
rami possibili per un dato nodo?
Qualcuno può chiarire questo? Ai fini pratici, i tentativi di Radix sono in genere implementati come i tentativi di Patricia (e, quindi, spesso considerati uguali)? O non è possibile effettuare tali generalizzazioni?