用于存储包含C中多个字符串的结构的数据结构

时间:2015-03-14 16:54:43

标签: c data-structures markov-chains

我应该使用什么样的数据结构来存储包含C字符串数组的结构?

某些结构需要易于访问,查找时间可能很短。 我一直在考虑哈希表但事实证明它毕竟不那么有效。

我需要存储从文本文件中读取的n-gram单词,n = 1,2,....

例如3-gram:"我需要帮助"  {" I" ,"需要"}是前缀和"帮助"是后缀。

struct data {
      char **prefix;
      char **suffix;
      int *occurrence;
};

前缀和可能在该前缀后出现次数的后缀应存储在这些结构中,因此我需要非常方便的访问。

然后我必须绘制一个初始前缀,并以一定的概率(根据出现次数)随机选择后缀,然后查找新获得的前缀,依此类推,直到我得到适当长度的文本。

这将是基于马尔可夫链的文本生成器。

0 个答案:

没有答案