关于PHP比较数组相似度的方法???

发布于 2021-11-13 14:39:35 字数 403 浏览 896 评论 5

现在有这样一个问题。。
题库里有50道题,每个用户过来都会随机抽取十道题来回答,系统会将每个用户所答题目ID和相应答案用,号拼接成字符串,存在一个表里,答案没有对错,最后只想从这些数组中取出答题相似度最高的。。

应该怎么做。。。。

 

请赐教!!!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

半世蒼涼 2021-11-16 02:32:15

我找到一个函数,array_intersect_assoc带索引检查计算数组的交集

$sub_sql = 'select * from f_subject';

$sub_quy = $db->select($sub_sql);

$other_array = array(); #所有用户题目ID和答案数组

$like_user = array();

for($a=0;$a<count($sub_quy);$a++){

if($sub_quy[$a]['id'] != $quy[0]['id']){

$other_array = array('name'=>$sub_quy[$a]['name']);

$subject_array_a = explode(',',substr($sub_quy[$a]['subject'],0,strlen($sub_quy[$a]['subject'])-1));

$answer_array = explode(',',substr($sub_quy[$a]['answer'],0,strlen($sub_quy[$a]['answer'])-1));

for($o=0;$o<count($subject_array_a);$o++){

$other_array += array($subject_array_a[$o]=>$answer_array[$o]);

}

// echo '<pre>';

#print_r($other_array);

$inter_array = array_intersect_assoc($other_array,$mage_array);

$count_inter = count($inter_array);

if($count_inter >= 3){

$like_user += array($other_array['name']=>$count_inter);

}

}

// echo $count_inter;

// echo '</pre>';

}

贱贱哒 2021-11-16 00:27:30

引用来自#3楼“奥特一点也不慢”的帖子

判断相似度来比较????

甜柠檬 2021-11-15 22:11:10

引用来自#2楼“张敏峰”的帖子

每个用户过来都会随机抽取十道题来回答——若是题目不相同,答案相同有意义吗?

孤檠 2021-11-15 18:51:57

判断相似度来比较????

眼泪淡了忧伤 2021-11-14 08:53:23

每个用户过来都会随机抽取十道题来回答——若是题目不相同,答案相同有意义吗?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文