У меня есть следующий код Scala, в котором z представляет массив строк с каждой строкой, представляющей набор данных набора данных.
Первым шагом является вычисление совпадающего балла между первой строкой в наборе данных со всеми остальными строками в наборе данных, после чего сохраняются все аналогичные строки в одном наборе.
Второй шаг - рассчитать совпадение второй строки, которая не соответствует первому шагу, со всеми другими непревзойденными строками в наборе данных.
Третий и последующие шаги, как и предыдущие шаги.
Самое главное, что мне нужно заботиться о том, чтобы все строки, соответствующие этим процессам, не участвовали в дальнейших циклах, поскольку они были сопоставлены на предыдущих шагах.
Предложить изменения в коде, чтобы все мои требования были выполнены.Изменения кода Scala для алгоритма
val z = y.split("\n") // z is Array[String]
for (i <- 1 to 500)
{
var str = ArrayBuffer[String]()
str += z(i)
for(j <- 1 to 500)
{
val dist = match(z(i),z(j)) // match calculates score between 2 strings
if (dist < threshold){
str += z(j)
}
}
Возможно, вы захотите попробовать codereview.stackexchange для 'предложений' – bholagabbar
@ShreyansSheth Code Review не предлагает предложений по изменению способа работы кода, это просто для просмотра кода, который уже работает по назначению. – SuperBiasedMan