分离度

TRO*_*TER 1 api facebook-graph-api

有没有办法,(有效或无效),找到,给Facebook上的两个人X和Y,这样定义的数字.如果X和Y是朋友那么1.否则如果X有一个朋友是Y的朋友,那么2.否则如果X是朋友Y的朋友的朋友,那么3.等等.

澄清:
执行此操作的程序将Facebook上任意两个人的姓名X和Y作为输入.然后,如果他们在eachothers friendslist,程序输出1.
如果没有,但他们每个人都有一个共同的朋友,然后输出2.
如果不是朋友,不要有共同的朋友,但每有一个朋友,谁是朋友,那么输出3.
如果没有,但X有一个朋友x,Y有一个freind y,而x和y有一个共同的朋友,那么输出4. etc ...

如果朋友之间没有连接,则输出0.

phw*_*hwd 5

你正在寻找一种叫做分离程度的东西.

填写每个案例的唯一方法是列出朋友的朋友的朋友...基本上尽可能接近你的应用程序覆盖Facebook图表.然后,您将Facebook用户表示为图表上的节点,并计算从A到B的路径.因此,除非您拥有来自Facebook的所有数据,否则完全正常工作的应用程序是不可能的.假设你这样做,你可以使用Dijkstra的算法.

对于淡化版本,您只能检查您的朋友,从中制作图表并找到大于1的任何度数.

您将需要诸如的查询

  • me/friends 用于初始化图形的构建

  • SELECT uid1, uid2 FROM friend WHERE uid1 = ' + uid1 + ' AND uid2 IN (SELECT uid2 FROM friend WHERE uid1=me()) 用于查找您的哪些朋友在网络中连接

如果你只需要这个来显示当前用户的用户路径,那么JS SDK中就有一个隐藏的插件http://www.fbrell.com/saved/12bd86306fe69a2af6134fe2a9e645e3

<fb:degrees href="http://facebook.com/zuck">
Run Code Online (Sandbox Code Playgroud)

分离度