数组相似度问题,输入的数组 最相似 已知维度(n)数组的哪一项?
var skuArr = [['2','套餐一','红','型号1'],['2','套餐一','红','型号2'],['2','套餐一','黄','型号1']];
var typeArr = Array.protoype.slice.apply(document.querySelectorAll("input:checked")),
selected = {};
for(var key in skuArr){
if(JSON.parse(typeArr) == JSON.parse(skuArr[key])){
selected = skuArr[key]
}
}
if(JSON.parse(selected) == "{}"){
selected = skuArr[0]
}
当相似度不完全相等时,求skuArr 最相似的项?
问题可以简化为求两个集合的交集的大小。相当于求两个数组的共同元素的个数。
然后根据交集大小程度进行排序。。
追加代码如下: