我正在使用javascript创建一个网站,用户可以在其中找到兴趣相似的其他用户。我想让一个用户有兴趣,例如:
dogs
cats
books
在数据库中我会有很多兴趣如此的用户:
USER 1 USER 2 USER 3
apples school apple
cats books dogs
pears cats lions
然后我想要的是能够找到具有最相似兴趣的用户。例如,在这种情况下,应该返回用户2,因为它具有两个匹配的兴趣,而其余的只有一个相似。我的兴趣列表将在10到200个兴趣点之间,因此它无法循环遍历它们或者那些将永远占据优势。如果有人有解决方案,请告诉我。这对我来说非常困难。
如果您需要更多解释,请与我们联系。 感谢
更新 这就是我的数据库目前的样子。
user
interests
apple: true
pear: true
book: true
school: true
答案 0 :(得分:0)
详细了解如何在Firebase文档中创建可扩展数据的示例: https://firebase.google.com/docs/database/web/structure-data#fanout提示:"群组"是你的兴趣"。
答案 1 :(得分:0)
我认为有兴趣的人,我重新格式化我的数据库以获得类别兴趣。然后我列出了在该类别中拥有该兴趣的每个人。