1

Подскажите пожалуйста как написать алгоритм.

На вход поступает две строки, например:

Первая: самолёт

Вторая: самокат

В итоге нужно записать слово в файл с выделенными различиями, например:

<лёт> само"кат"

в скобки <> вставить символы что удалились в кавычки "" вставить символы что добавились или заменились в слове

Еще один пример:

Первая последовательность: When I hear

Вторая последовательность: The thing always appears

в итоге должно быть:

<.w> "t" he <.n> "thing"<.I> "always" <.h> "app"ear"s"

Сравнивать только похожие слова если слова совсем не похожи то считать что они заменены другим или просто добавлены, как в случае с hear и always, hear не сравнивается с always так как они не похожи, но hear сравнивается с appears так как последовательности ear совпадают.

Mccree
  • 21
  • 1
    Может кто-то и напишет готовый код, но пока посоветую посмотреть Расстояние Левенштейна. А также в книге "Алгоритмы. Вводный курс" Томаса Кормена главу "Алгоритмы на строках" - там как раз то, что вам нужно: "Наидлиннейшая общая подпоследовательность" и "Преобразование одной строки в другую". – Alexander Petrov Oct 05 '19 at 13:10
  • Спасибо за помощь) – Mccree Oct 05 '19 at 14:26
  • Вам надо что то типа такого, только примененная не на список строк, а на список символов (чем строка и является) – tym32167 Oct 05 '19 at 14:33
  • ООО, спасибо большое, то что нужно)) – Mccree Oct 05 '19 at 15:28

0 Answers0