gpt4 book ai didi

java - 计算单词列表中字符的出现次数

转载 作者:太空宇宙 更新时间:2023-11-04 07:36:59 24 4
gpt4 key购买 nike

我正在尝试为刽子手游戏制作人工智能,其中一部分需要计算单词列表中每个可能字符的所有出现次数。我计划在计数之前剔除单词列表,以使事情运行得更快(首先剔除与可猜测短语长度不同的所有单词,然后剔除与猜测字符不匹配的单词)。

我遇到的问题是在下面的代码中。不知何故,它总是返回正确长度的 e 列表(与可能的字符数匹配)。我不确定我在这里做错了什么,但问题肯定出在 countCharacters 中的某个地方。

MethodicComputer(){
guessable = parseGuessable();
wordList = parseText();
priorities = countCharacters(guessable);
}


public char guessCharacter(String hint){
char guess = 0;
System.out.println(guessable);
System.out.println(priorities);
guess = priorities.charAt(0);
priorities = priorities.replaceAll("" + guess, "");

return guess;
}

private String countCharacters(String possibleChars){
charCount = new Hashtable();
String orderedPriorities = "";
char temp = 0;
char adding = 0;
int count = 0;
int max = 0;
int length = possibleChars.length();

for (int i = 0; i<length; i++){
temp = possibleChars.charAt(i);
count = wordList.length() - wordList.replaceAll("" + temp, "").length();
charCount.put(temp, count);
}

while (orderedPriorities.length() < length){
for (int i = 0; i < possibleChars.length(); i++){
temp = possibleChars.charAt(i);
if (max < (int) charCount.get(temp)){
max = (int) charCount.get(temp);
adding = temp;
}
}
orderedPriorities += adding;
possibleChars = possibleChars.replaceAll("" + adding, "");
}

return orderedPriorities;
}

最佳答案

问题是我没有更新max变量,所以它从来没有进入if语句并更新adding变量。简单添加

max = 0; 

到 while 循环的末尾修复了它。

关于java - 计算单词列表中字符的出现次数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16714653/

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