关于六度空间理论以及类似于腾讯可能认识的朋友的有关问题
关于六度空间理论以及类似于腾讯可能认识的朋友的问题
有5个人,分别是A、B、C、D、E,其中A是B的朋友,B是C的朋友,D是E的朋友,很容易就可以将他们分为两个组,分别是A-B-C、D-E。如果这里不是5个人,数量级是千万级别或者更大,他们之间的关系很复杂,比如,A是B的朋友,B是C的朋友,C是D的朋友,D是E的朋友,E是F的朋友。。。。。。现在需要依据朋友关系把他们分成不同的朋友圈,请问有没有效率比较高的算法?
以前用过将数据写入数据库,通过定义搜索级别,比如搜索A的朋友,再搜索A的朋友的朋友。。。。。。这种方式感觉比较傻瓜,不能一次性的解决问题。
------解决方案--------------------
腾讯用户数量庞大,估计都不用6度,它就把共同好友比较多,却还不是好友的人互相推荐就行了
------解决方案--------------------
涂色问题
------解决方案--------------------
数据挖掘中有对聚类的研究,主要就是用来解决这类问题。
------解决方案--------------------
比较复杂,做到千万级别的无重复节点
有5个人,分别是A、B、C、D、E,其中A是B的朋友,B是C的朋友,D是E的朋友,很容易就可以将他们分为两个组,分别是A-B-C、D-E。如果这里不是5个人,数量级是千万级别或者更大,他们之间的关系很复杂,比如,A是B的朋友,B是C的朋友,C是D的朋友,D是E的朋友,E是F的朋友。。。。。。现在需要依据朋友关系把他们分成不同的朋友圈,请问有没有效率比较高的算法?
以前用过将数据写入数据库,通过定义搜索级别,比如搜索A的朋友,再搜索A的朋友的朋友。。。。。。这种方式感觉比较傻瓜,不能一次性的解决问题。
------解决方案--------------------
腾讯用户数量庞大,估计都不用6度,它就把共同好友比较多,却还不是好友的人互相推荐就行了
------解决方案--------------------
涂色问题
------解决方案--------------------
数据挖掘中有对聚类的研究,主要就是用来解决这类问题。
------解决方案--------------------
比较复杂,做到千万级别的无重复节点