Quindi, molto spesso incontrerò una situazione in cui mi piacerebbe elaborare i nomi degli host in modo gerarchico.
Ad esempio, dato un nome host "foo.bar.baz.example.com", potrei volerlo confrontare con una struttura dati che contiene un'autorità più alta come "example.com" o "baz.example.com" e vedere se ottengo una corrispondenza.
Di solito, il modo in cui gestisco questo è semplicemente utilizzare un hashtable e rimuovere iterativamente i sottodomini fino a quando non trovo una corrispondenza (o, mai trovare una corrispondenza, qualunque sia il caso.)
Ma stavo pensando che qualcosa come un albero trie / prefix potrebbe essere molto più adatto per questo (se dovessi invertire le etichette dei domini).
Naturalmente, il problema è che un trie di solito lavora su singoli personaggi - mentre in questo caso vorrei fare in modo che ogni sottodominio (o "etichetta", in DNS-speak), una singola "unità".
Esiste una struttura dati che potrebbe essere adatta per qualcosa di simile?