这类题目原型可以拓展出很多,大部分人主要依据是图论的求最短距离的算法。比如公
交换乘的数据库设计,与代码实现等。目前有一个类似的问题。
每个人都有朋友关系,或者说社会网络关系,请用php 最快的效率,找出人物A与人物
f是否有6层以内的朋友关系。如果有,则算出最少层的朋友关系,并列出朋友链。
A 是 B的朋友 B 是C的朋友 则 A与c是两层朋友关系。
数据库 主要有两张表
第一张 user表 里面有 userid username 两个字段 里面有10万条记录
第二张表 relation表 里面有 三个字段 relationid userid friendid 注意
当userid 与friendid中出现的是对称的出现的关系,比如 有 a 为 b 的朋友 则 b
必定为 a的朋友。
第二张表有 200万条记录
可以用存储过程,也可以用php 这么类似的方式 ,输入任何 2个用户 在15秒内能返
回运算结果。 服务器为一台普通的pc服务器 有2g内存。
【 在 ari (黑夜彩虹) 的大作中提到: 】
: 朋友想做类似的网站,大家推荐一下,谢谢!
--
FROM 113.109.177.*