У меня есть список строк, таких как {abb, abgt, acctg, tgbs, abs} и т. Д. Количество строк определяется пользователем. Мне нужно объединить строки одинаковой длины вместе. Какой алгоритм кластеризации подходит для такого случая и почему? Насколько я знаю, K-значит нужно знать количество кластеров перед рукой, которые я не могу сказать, поскольку количество строк не предопределено.Строка кластеризации на основе их длины
-2
A
ответ
0
Итерации над вашими строками. Сохраните их в карте int -> string, где вы используете свою длину строки в качестве ключа. Готово.
Это не кластеризация. Технически это всего лишь простая операция GROUP BY
. В SQL вы бы сделали GROUP BY LENGTH(col)
.
k-означает совершенно неправильный выбор здесь.
+0
: Большое спасибо за предложение ur. – Ivy
вы можете группировать по длине (str) .. никакой реальной необходимости для кластеризации. –