作者gargamel (Nerding)
看板Database
标题Re: 请问facebook的「共同朋友」是如何做到?
时间Wed Oct 26 18:06:39 2011
user friends
--------- ----------------
id(pk) user_id(fk id)
name friend_id(fk id)
1. 找出自己拥有的朋友名单
2. 找出朋友的朋友名单
3. 自朋友的朋友名单排除自己朋友名单
※ 引述《tn801534 (踢恩)》之铭言:
: 我的回应纯属猜测
: 首先当你朋友是第一个新建帐号的时候 你会发现建议朋友那边是空的~
: 所以我猜测当你与你朋友没有共同朋友的时候 建议朋友就是空的
: 你与你朋友有了共同朋友(假设是A),只要再取A与你的共同的朋友(假设是B),
: FB就可以合理的猜测B也许是 你朋友的推荐朋友
: 原因为
: 1.你.A.B互为朋友
: 2.你.你朋友.A互为朋友
: 这样的运算其实不会太慢
: 因为假设你与你朋友共同朋友50个(算很多了八?)..
: 再取这50个人与你的共同朋友就是做51次共同朋友的交集~~~
: ※ 引述《poopoo888888 (阿川)》之铭言:
: : 如题
: : 如果是浏览某个人的页面 要显示自己跟这个人的共同好友
: : 那就把这两个人的好友名单叫出来 取交集就好
: : 但问题是facebook会有「推荐为好友」的功能
: : 表示使用者跟其他人有几个共同好友是已经算好放在那的
: : 而「已经算好放在那」这件事我有点难以想像
: : 光是100个使用者 他们间的相互关系就有100!这麽多..
: : 想请问各位大大这个功能是如何implement的呢?
: : 在SQL跟non-SQL上各自的solution为何?
: : 谢谢!
--
1F:推 archiuray:生小孩的时候医生可以帮忙缝紧一点,所以不见得比较松10/12 17:00
2F:→ archiuray:朋友的老婆就是生完以後才变紧的,生之前还比较松= = 10/12 17:01
3F:推 loguar2:请问archiuray怎知道朋友老婆的紧度... 10/12 17:09
4F:→ liveDkcalB:楼上明察秋毫.... 10/12 17:10
5F:推 Mendel5566: archiuray怎知道朋友老婆的紧度 10/12 17:13
6F:推 jamhuang: 问archiuray怎知道朋友老婆的紧度... 10/12 17:14
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 223.138.11.87