我想计算来自arr1的数字出现在arr2中的次数 . 我尝试与集相交,但我不想删除重复 .
var arr1 = [1,4,5,7]
func compareCount(arr2[Int])-> Int {
//arr2 = 1,1,4,5,6,6,3,9,7,7,7,1,7
return count
//returns 9 as there are 9 elements within arr2 that exist within arr1
}
我想计算来自arr1的数字出现在arr2中的次数 . 我尝试与集相交,但我不想删除重复 .
var arr1 = [1,4,5,7]
func compareCount(arr2[Int])-> Int {
//arr2 = 1,1,4,5,6,6,3,9,7,7,7,1,7
return count
//returns 9 as there are 9 elements within arr2 that exist within arr1
}
2 回答
您可以使用
NSCountedSet
:然后,遍历
arr1
,对于每一个,您将轻松获得count(for:)
的出现次数,并且使用reduce,您可以添加它们:编辑:
如果你不想使用
reduce()
(因为你想避免使用它而不理解它),而是做一个更简单的循环:循环第一个数组并计算第二个数组中的每个过滤元素