在Swift中以函数方式计算两个数组的差
本周,我遇到了我的朋友MateuszMaćkowiak提出的挑战,以解决他创建的diff函数中的问题。 给定两个数组,他的目标是检索:
- 通用元素:两个数组中的元素。
- 插入的元素:不在第一个数组中但在第二个数组中的元素。
- 删除的元素:不在第二个数组中但在第一个数组中的元素。
不过有一个陷阱。 元素不可比较,也不可等于 ,并且第一个数组的元素可能与第二个数组的类型不同。 但是,该函数将接收compare
闭包,该闭包从第一个数组中获取一个元素,从第二个数组中获取一个元素,并告诉它们是否相等。
他向我展示了他的解决方案:
输入数据为:
让a = [Int](0 ... 1000)
令b = [Int](750 ... 1500)