Я делаю расстояние редактирования с пользовательским вводом. Я сохраняю свои значения в массиве. то расстояние редактирования будет сравнивать вход пользователя с моим массивом строк. Я делаю цикл, который, если расстояние редактирования больше 2, будет отображать недопустимое значение else.Выход массива редактирования расстояния
Единственная проблема, с которой я столкнулся, заключается в том, что, хотя программа работает нормально, результат является результатом всех строк «28», которые у меня есть в моем массиве. Я хотел бы показывать только недействительный или действительный один раз.
Тест - это мой массив строк, а пользователь - пользователь String - пользовательский ввод.
void testingLD()
{
for (int i=0; i<test.length; i++)
{
if(getLevenshteinDistance(test[i],user) > 2)
{
println ("Invalid re-input");
}
else
{
println ("Valid");
}
}
}
Я пытаюсь использовать логическое, и хотя это имеет смысл, и он должен работать так. Программа дает мне недействительность для всех возможностей, включая те, которые являются действительными. извините, я все еще новичок в обработке. – user3157072
Вы используете формулу левенштейна отсюда? https://forum.processing.org/two/discussion/20018/levenshtein-distance-sketch –
да я использовал этот пример – user3157072