一連のサンプルテキストを指定してランダムなテキスト文字列を生成するための効率的なn次マルコフ連鎖法を作成しようとしています。私は現在、マップのいくつかのレイヤーを使用するJava実装を持っていますが、それは不格好です。接尾辞配列は私のニーズにぴったりですが、それがJavaで効率的に実装できるかどうかはわかりません。
CIでは次のようなことをするかもしれません:
char exampleText[MAX];
char *suffixArray[MAX];
...
while(n<MAX && suffixArray[n++] = &exampleText[n]);
sort(suffixArray);
Javaでは、のサブストリングを取得するexampleText
かsuffixArray
、インデックスの配列に変換する必要があるため、これは厄介になります。
Javaでこれに良いアプローチをするための提案はありますか?