У меня есть номер списка названий книг вместе с их авторами (номер ISBN отсутствует). Я хочу вести единый список, содержащий уникальные записи книг, и удалять дублирующиеся записи каждой книги.
Проблема, с которой я сталкиваюсь, состоит в том, что разные списки могут следовать различным соглашениям для хранения записей книги. Например, список может хранить имя автора в соответствии с соглашением last name
first name
, в другом списке запись имени самой книги содержит некоторую дополнительную информацию, такую как название серии вместе с порядковым номером.
Существует ли какой-либо стандартный алгоритм для решения проблем такого типа? Я не хочу изобретать велосипед. Прямо сейчас я использую php для кодирования решения. Для начала я попробовал levenshtein, soundex, metaphone, similar_text
, но ни один из них не выглядит многообещающим для меня.
Пример: рассмотрим пример Цикл наследования , серия содержит четыре книги. Теперь запись во второй книге серии может быть Eldest
, Eldest: The Inheritance Cycle (Book 2)
, Eldest (Inheritance)
, Eldest (Inheritance Cycle)
, Inheritance 002: Eldest
.