我有一个项目数组(约 5000 个项目,每个项目都是一个英文单词)和成对项目之间的距离函数。我想在数组中找到一组项目,其中组内的所有项目都满足距离标准(例如,每对项目的距离小于 2)。这些组通常应尽可能大,但对此没有正式定义或硬性要求。
我的实现语言是 PHP,但我正在寻找有关可以有效处理此问题的算法的一般建议。
更新:我想我可以通过构建一个顶点是项目的图来解决这个问题,并且项目之间存在满足距离约束的边。一旦我构建了图,我就可以运行一个像 Bron-Kerbosch 这样的算法来列出所有的最大派系。如果这行得通,我会更新,但在此期间随时添加您的想法。