【发布时间】:2012-11-01 22:44:44
【问题描述】:
我有一个动物数据库,每个动物都有许多属性,范围从 0 到 1——这些属性是大小、速度、毛羽等。给定一组输入属性和每种属性的权重,我需要在一组动物中找到“最接近”的匹配项。有没有一种算法可以在 O(n) 时间内完成这个任务?
我特别想做的是为游戏中的遗传算法生成的“动物”找到合适的纹理,方法是将它们与已经存在的动物相匹配。我所说的“最接近”是指属性差异的加权和最小的动物。数据库和权重在应用程序启动时是已知的,因此可以投入大量时间来准备数据。
根据用户偏好,我找到了关于字符串匹配和产品匹配的算法,但要么我没有找到我正在寻找的东西,要么我不明白如何将这些概念重新应用到我的困境中。也许图论世界有什么东西可以帮助我?
任何帮助将不胜感激!
【问题讨论】:
-
答案总是liger。
-
@A.韦伯:哦,一个恒定时间的解决方案。感谢大家的回复,如果有什么我可以做的来改善这个问题(以便其他有类似问题的人可以找到它),请告诉我!