Ich versuche eine Trie
Implementierung in C++ zu erstellen. Ich kann nicht herausfinden, wie alle Wörter gedruckt werden, die in Trie
gespeichert werden.Wie alle Wörter in einem Trie gedruckt werden?
Dies ist, wie ich die TrieNode
implementiert habe.
struct TrieNode{
bool isWord;
int data; //Number of times Word Occured
TrieNode *Child[ALPHABET_SIZE]; //defined as 26
};
Ich weiß, dass ich ein pointer
zu dem übergeordneten Knoten speichern könnte, Tiefensuche für alle Knoten in dem isWord==True
und rekursiv jedes Wort aus diesen Knoten drucken.
Aber ich frage mich, gibt es eine Möglichkeit, jedes Wort in der Trie
mit meiner Implementierung eines TrieNode
auszudrucken.
Danke für jede Hilfe.
Was ist 'data'? Ich verstehe 'isWord' und das' Child'-Array (warum nicht 'children'?) Gibt den Kindern ... aber wofür stehen' data'? –
Entschuldigung, zur Klarstellung. Es soll die Anzahl der Male enthalten, die das Wort in einem Textdokument vorkam. – theIrishUser