有大神帮我看下这个是不是协同过滤推荐算法?

@Override

public List<Product> getUserLike(Integer uid,Integer pid){

List<UserLook> userLooks = userLookMapper.getListByUid(uid, 5);

List<Product> products = new ArrayList<Product>();

    int sum_xy = 0;
    int sum_x = 0;
    int sum_y = 0;
    double sum_x2 = 0;
    double sum_y2 = 0;
    int n = 0;         

for(UserLook userLook:userLooks) {

List<Product> pList = productService.findProductByRand(userLook.getCsid(), userLook.getPid(), 1);
if(pList!=null && pList.size()>0 && !pid.equals(pList.get(0).getPid())) {!


 Product product = pList.get(0);
 int sellNum = productService.getSellNum(product.getPid());
 product.setSellNum(sellNum);

 n += 1;
             int x = userLook.getUid();
             int y = userLook.getPid();
             sum_xy += x * y;
             sum_x += x;
             sum_y += y;
             sum_x2 += Math.pow(x, 2);
             sum_y2 += Math.pow(y, 2);

             double denominator = Math.sqrt(sum_x2 - Math.pow(sum_x, 2) / n) * Math.sqrt(sum_y2 - Math.pow(sum_y, 2) / n);
 if(denominator==0) {
  products.add(product);
 }

}  

}


return products;

}

uid是用户编号,pid商品编号csid商品分类的类别编号

是的,就是这个公式
图片说明

https://www.cnblogs.com/Little-Li/p/11354590.html