gpt4 book ai didi

algorithm - 谁在FB上有更多的相关 friend

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:45:34 24 4
gpt4 key购买 nike

我正在开发一个应用程序,它将有多个 Facebook 用户。

我正在尝试找出了解谁(从最多约 20 个列表中)与该列表中的其他人有最多联系( friend )的最佳方法。

那么,假设这种情况:

list = [A, B, C, D, E, F...];

其中,ABCD 的 friend 。 BAC 的 friend 。

然后我会知道,A 有 3 个连接,B 有 2 个,C 有 2 个。然后使用 A 作为发布内容的那个。

我想到了一些解决方案:

1) 对于列表中的每个人,检查所有其他人的好友连接(使用 Graph API)。

2) 在数据库中缓存所有用户的所有好友(可能是 Neo4jMongoDBSQL...),然后横向搜索,寻找共同的 friend 。

问题一:每次都可能要花时间。问题 2:DB 会变得非常大。

问题:1 和/或 2 可以吗?还有其他方法吗? (我阅读了 Facebook API,但没有看到类似的内容)。

最佳答案

您可以像您所说的那样使用 Neo4j。在 neo4j 中保存人员,包括他们的关系(友谊),然后使用类似于此的查询:

MATCH (a:Person)-[f:FRIENDS]-(b:Person)
WHERE Id(a) IN [1, 2, 3] AND Id(b) IN [1, 2, 3]
RETURN a.name AS name, count(f) AS numOfFriends
ORDER BY numOfFriends DESC

关于algorithm - 谁在FB上有更多的相关 friend ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25006643/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com