首页 > 试题广场 >

请基于以下说明实现一个在线的个性化商品推荐服务

[问答题]
请基于以下说明实现一个在线的个性化商品推荐服务。
1)数据说明
1.商品数据,每个商品包含下表所示的字段信息:

2.用户数据,每个用户包含下表所示的字段信息:
2)推荐逻辑说明
基于以上数据说明,请实现符合以下要求的商品推荐算法,为当前访问的用户推荐商品。
1.对于一对(商品,用户)组合,定义如下的得分公式。所推荐商品是按与当前用户得分从大到小的top10个

2.n所有被推荐的商品的得分必须大于0。当符合条件的商品不够时允许推荐的商品数小于10个
3.现实要求
请自行选择合适的编程语言实现以下两个要求:
参考以下“数据结构定义示例”(允许直接使用示例),定义数据结构userprofile用于表示单个用户的用户数据,定义数据结构productspool表示所有待推荐商品的商品数据。请在相关字段上添加合适的注释。(假设内存可以容纳所有的数据;为考虑代码的精简性,请无需考虑面向对象的编码规范,如:类字段可直接使用public)。
n实现如下形式的推荐方法(以java为例,其他语言自行定义),返回值为按得分从高到低排序的商品ID。
注意:代码不要求能通过编译,假设每个标签对应的商品数远小于商品总量,请使用合适的数据结构,使得推荐算法的实现性能最优。
4.数据结构定义示例
public class userprofile{
public long userid;//用户id
public map<long,double>prefer tags;//偏好标签:key=标签id,value=偏好得分
}
public class product{
public long productid;//商品id
public long []tags;//标签id列表
}
public class productpool{
public list<product>products;//所有商品
}

这道题你会答吗?花几分钟告诉大家答案吧!