Как правильно называется (или, иными словами - что мне забивать в поисковик ) следующая задача: нужно найти общее подмножество (или подмножества) в двух произвольных строках символов. Например: абыверлаг - кудывермак, ититьеготак - майнготизтит.
Понятно что-то придумать самому можно, но возможно есть какие-то наработки которые позволяют
(
Read more... )
Comments 10
Ещё, по-моему, может помочь внимательное изучение хорошей реализации grep :)
Reply
Попробую посмотреть статью (с первого взгляда выглядит страшновато :))))
Reply
Кстати, а какова там длина алфавита? В смысле, в твоей задаче последовательности реально составлены из 26 букв?
Точнее, меня интересует вопрос отношения длины алфавита и длины входных последовательностей.
Вообще, можно просто вычитать одну из другой побуквенно с разными сдвигами и участки, соответствующие группам нолей в результате, и будут искомыми общими подпоследовательностями. Это квадратичный метод, но мне что-то непонятно, как быстрее (можно закольцевать длинную строку для некоторого уменьшения циклов сдвига).
Reply
Смотри ещё какyю прелесть мне Тома насоветовала: Https://qastack.ru/codegolf/182134/greatest-common-substring
Reply
Leave a comment