gpt4 book ai didi

algorithm - 随机写马尔可夫模型效率

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:32:52 25 4
gpt4 key购买 nike

这是我的实现但是,在分析文本文件时有点慢,任何人有更好的想法或更好的数据结构来实现随机写入?我没有使用 STL 库,所以不用担心语法。这里的 vector 没有使用 push_back,而是使用 .add

randomInteger 将生成范围之间的随机整数

如果可能,我想生成 2000 个字符;

我认为最慢的部分是逐字符读取文件?

void generateText(int order, string initSeed, string filename){
Map<string , Vector<char> > model;
char ch;
string key;
ifstream input(filename.c_str());
for(int i = 0; i < order; i++){
input.get(ch);
key+=ch;
}
while(input.get(ch)){
model[key].add(ch);
key = key.substr(1,key.length()-1) + ch;
}
string result;
string seed = initSeed;
for(int i = 0;i<2000;i++){
if (model[seed].size() >0) {
ch = model[seed][randomInteger(0, model[seed].size()-1)];
cout << ch;
seed = seed.substr(1,seed.length()-1) + ch;
}
else
return;
}
}

最佳答案

您需要确定它花费的时间太长。 (为什么这段代码在普通笔记本电脑上运行不到一秒?)

如果是,则需要分析。

例如,一个可能的候选者是生成随机数的成本......

你只会通过分析来反驳我;)

关于algorithm - 随机写马尔可夫模型效率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11240118/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com