我有两个数组:
array1 = [1,2,2,4,5,6]
array2 = [2,1]
我怎么得到
array3 = [2,4,5,6]
我尝试过
array1 - array2
,但它返回[4,5,6]
。 最佳答案
你所描述的是一个multiset标准库中没有实现,但您可以使用multiset gem。
require 'multiset'
ms1 = Multiset.new([1, 2, 2, 4, 5, 6])
ms2 = Multiset.new([2, 1])
ms1 - ms2
#=> #<Multiset:#1 2, #1 4, #1 5, #1 6>
(ms1 - ms2).to_a
#=> [2, 4, 5, 6]