我正在寻找一个有效的n阶马尔可夫链方法来生成给定一组示例文本的随机文本字符串。我目前有一个使用几层地图的Java实现,但它很笨拙。后缀数组对于我的需求来说是完美的,但我不清楚它是否可以在Java中有效地实现。在Java中后缀数组实现
在C我可能会做这样的事情:
char exampleText[MAX];
char *suffixArray[MAX];
...
while(n<MAX && suffixArray[n++] = &exampleText[n]);
sort(suffixArray);
这在Java中变得粗糙,因为我不得不采取的exampleText
子,或转成suffixArray
指数的数组,或别的东西。
有关在Java中使用此方法的任何建议吗?
谢谢你,我还没有想过尝试一下出。我只是假设它会爆炸。 – Rich 2010-07-28 14:36:52
不再。自从Java 7开始执行复制以来,所以最好编写自己的包装器 – 2013-09-30 09:13:35