Я искал в Интернете для реализации С++ Longest Common Substring, но не нашел подходящего. Мне нужен алгоритм LCS, который возвращает подстроку, поэтому это не просто LCS.
Мне было интересно, как я могу это сделать между несколькими строками.
Моя идея состояла в том, чтобы проверить самый длинный из двух строк, а затем проверить все остальные, но это очень медленный процесс, который требует управления многими длинными строками в памяти, что делает мою программу довольно медленной.
Любая идея о том, как это можно ускорить для нескольких строк? Спасибо.
Важное изменение Одна из переменных, которые я даю, определяет количество строк, в которых должна находиться самая длинная общая подстрока, поэтому мне могут быть предоставлены 10 строк и найти LCS из них всех (K = 10) или LCS из 4 из них, но мне не сказали, 4, мне нужно найти лучшие 4.