public static DoubleArrayTrie Build(List <string> surfaces, bool compact) { var trie = new Trie.Trie(); foreach (var surface in surfaces) { trie.Add(surface); } var doubleArrayTrie = new DoubleArrayTrie(compact); doubleArrayTrie.Build(trie); return(doubleArrayTrie); }
public void TrieInsertTestRecursive() { //default Trie would be created with Iterative Strategies var trie = new Trie.Trie(new RecursiveInsertStrategy(), new RecursiveSearchStrategy()); trie.Insert("ab"); trie.Insert("abc"); trie.Insert("abcd"); trie.Insert("abcdefg"); trie.Insert("abcde"); trie.Insert("ilu"); Assert.IsTrue(trie.Exists("abcd")); Assert.IsFalse(trie.Exists("af")); Assert.IsFalse(trie.Exists("i")); Assert.IsTrue(trie.Exists("ilu")); trie.Delete("ilu"); Assert.IsFalse(trie.Exists("ilu")); trie.Delete("abc"); Assert.IsTrue(trie.Exists("abcd")); Assert.IsFalse(trie.Exists("abc")); }
public void Init() { _trie = new Trie.Trie(); }