ItemCF认为一个人会喜欢和他以前喜欢的东西相似的东西.
通常情况下,ItemCF算法可归纳为如下三个步骤:
1、计算用户曾经评过分的每一个物品与当前物品的相似度;
2、从用户曾经评过分的物品中,选出与当前物品相似度最高的k个作为当
前物品的邻居;
3、利用邻居物品评分的加权平均值来预测用户对当前物品的评分
代码如下:
#include<iostream>
#include<algorithm>
using namespace std;
#define K 2
class U_I
{
public:
U_I::U_I(){M=5;N=5;no=0;}
int GetM(){return M;}
int GetN(){return N;}
int GetR(){return R;}
int GetC(){return C;}
double Getsim(){return sim;}
double Getindex(){return index;}
int Getno(){return no;}
void Setno(int n){no=n;};
void Setsim(double s