查找重复的书籍

Posted

技术标签:

【中文标题】查找重复的书籍【英文标题】:Finding duplicate books 【发布时间】:2012-01-14 07:59:40 【问题描述】:

我有一些书名列表及其作者(没有 ISBN 编号)。我想维护一个包含唯一书籍条目的列表,并删除每本书的重复条目。

我面临的问题是不同的列表可能遵循不同的约定来存储书籍的条目。例如 - 一个列表可能以last name first name 约定存储作者姓名,在另一个列表中,书名条目本身包含一些附加信息,例如系列名称以及序列号。

是否有任何标准算法来处理此类问题?我不想重新发明***。现在我正在使用 php 来编写解决方案。作为初学者,我尝试过levenshtein, soundex, metaphone, similar_text,但它们对我来说都没有希望。

示例:以Inheritance Cycle 为例,该系列包含四本书。现在系列第二本书的入口可以是EldestEldest: The Inheritance Cycle (Book 2)Eldest (Inheritance)Eldest (Inheritance Cycle)Inheritance 002: Eldest

【问题讨论】:

这是一个复杂的问题。您可以尝试使用包含书名和作者姓名的数据库,并对数据进行模式识别。我还想看看这里是否有任何可用的 Amazon API。 是否有任何免费的、最新的、图书数据库或某种订阅可用? 【参考方案1】:

这听起来像是一个搜索问题,只是域更受限制。我可能会使用现有的搜索技术(可能使用Lucene 或Solar)并遍历列表,首先搜索匹配项,然后如果找不到足够接近的匹配项,则添加“文档”(您拥有的一本书的信息)到索引。

这不是一个完美的答案,但它会为您提供各种匹配的分数,因此它会为您提供一些可调整的参数来使用。如果这不仅仅是一个需要解决的一次性问题,这是一个特别诱人的解决方案,因为“算法”可以在需要时学习和调整自身。

【讨论】:

以上是关于查找重复的书籍的主要内容,如果未能解决你的问题,请参考以下文章

查找书籍

慕课学习手记!(完成查找书籍小程序~)

[PTA]习题9-4 查找书籍

作业搜索书籍[重复]

7-1 查找书籍

7-3 查找书籍