trie

    -1热度

    2回答

    我应该创建一个字典Trie并使用节点。我需要将它们存储在散列表中。我需要创建一个散列函数来将节点放置在正确的位置。我如何将字符串转换为散列函数中的整数?

    4热度

    2回答

    我有以下C++代码: #include <vector> #include <string> using namespace std; struct Trie { bool eow; //end of word char val; vector<Trie> chd; //children void push_word(const string&

    -2热度

    1回答

    添加单词任何一个可以帮助我如何在特里添加单词真正的新的数据结构 /** * This method adds a word to the Trie * * @param s - word to add to the Trie * @param data - Data associated with word s */ public void addWord(String s, E da

    16热度

    2回答

    trie数据结构通常是以英文存储字符串的好方法。它的工作原理是构建一棵树,每个边都用一个字母标记,并且树中标记节点的路径指出数据结构中的一个单词。 这个数据结构在英语中运行良好,因为英文字母中只有26个字母(“合理的”分支因子),这些字符具有连续的ASCII值(因此子指针可以存储在数组键入的通过每个孩子使用的字母的索引),并且有许多英文单词具有共同的前缀(所以在结构中有很多冗余)。 我是一位母语为

    -4热度

    1回答

    我们在服务器端的服务中有一个大型的树状结构,它有几千万个节点。整个trie需要大约4个RAM的演出。到目前为止,我们只使用基本的二进制.NET序列化来将trie存储在一个文件中并将其重建回内存中。但它太慢了......在我们的例子中,有什么更好的序列化算法,某种类似于直接mmap的技巧会很棒,但.NET不允许定制内存分配器。目标是最小化保存,特别是从文件中加载特里(文件大小不是我们关心的)。 注意

    0热度

    2回答

    hash = { "d" => { "o" => { "g" => { "s" => {} }, "l" => { "l" => {} }, "o" => { "m" => {} } } }, "b" => { "o"=>{

    -1热度

    1回答

    我正在做以下任务(在C#中):我们有一组字母和一个英文字典。根据提供的字母查找所有可能的单词组合。为此,我使用trie数据结构 - 我从剩余的字母中搜索单词和所有可能的附加单词(递归操作)。但是,该操作非常耗费时间/空间。任何想法如何更有效地处理它? 编辑 这是示例代码我准备: class Trie { private Node root = new Node(null);

    0热度

    1回答

    我试图导入 import org.apache.commons.collections4.trie.PatriciaTrie; 它给我的错误,它不存在。我正在使用Glassfish服务器的Lucene。 应该怎么做才能解决这个问题?

    0热度

    1回答

    对于任务,我必须制作两种方法,一种是打印出一个存储几个单词的数字树,并在实际单词旁边标记*。另一种方法应该是找到这个数字树中最长的单词。下面是定义的类(我已完成的打印方法): class DTN { public: DTN() : is_word(false), word_to_here(""), children() {} DTN (bool

    0热度

    1回答

    后来我问我应该用什么来存储很多产品代码。 我决定用尝试次数,和我做了这个代码,我上传到我的Github上库 https://github.com/OctavioMaia/Projetos 但现在我必须按照我的计划来打印我的特里,但我不能够做到这一点。 我还需要打印,例如:所有以字母“A”开始的代码,所以我的打印功能需要接收一个trie和一个char来打印。 问题是我无法成功打印它。我没有经验的指针