/** * Add a word to the trie. * Adding is O (|A| * |W|), where A is the alphabet and W is the word being searched. */ public void AddWord(string word) { TrieNode curr = head; curr = curr.GetChild(word[0], true); for (int i = 1; i < word.Length; i++) { curr = curr.GetChild(word[i], true); } curr.AddCount(); }
public void AddWord(string word) { TrieNode curr = head; // curr = curr.GetChild(word[0], true, true); for (int i = 0; i < word.Length; i++) { if (i == word.Length - 1) { curr = curr.GetChild(word[i], true, true); } else { curr = curr.GetChild(word[i], true); } } curr.AddCount(); }