第二题 直接使用Hadoop MapReduce
第三题 可以首先计算url的不相似度,不相似从小到大意味着相似度从大到小
int getLeast(int first, int second, int third) {
int mid = first>second?second:first;
return mid>third?third:mid;
}
int unsimilar(char* res, char* url) {
cout << "res " << res << endl;
cout << "url " << url << endl;
int iter = 0;
if (*res == '\0') {
while (*url != '\0') {
iter++;
url++;
}
return iter;
}
iter = 0;
if (*url == '\0') {
while (*res != '\0') {
iter++;
res++;
}
return iter;
}
if (*res == *url)
return unsimilar(res+1, url+1);
return 1 + getLeast(unsimilar(res+1, url+1), unsimilar(res+1, url), unsimilar(res, url+1));
}