Arrays 如何对两个数组求和而不重复相同的值

Arrays 如何对两个数组求和而不重复相同的值,arrays,ruby,Arrays,Ruby,我有两个数组,我不知道如何求和。例如: [1,2,3]+[2,3,4,5]=[1,2,3,4,5] 最有效的方法是执行以下操作: 与(array1+array2)不同,uniq只在一个步骤而不是两个步骤中执行操作。我感兴趣的是set union有两种优化方法,一种是通过执行两个循环来优化较小的数组,另一种是通过创建哈希然后转储值。我原以为Set.new(array1+array2)会有类似的性能,但速度要慢4倍-非常有趣@AnthonyArray#|是用C编写的,而Set是用Ruby实现的。

我有两个数组,我不知道如何求和。例如:

[1,2,3]+[2,3,4,5]=[1,2,3,4,5]

最有效的方法是执行以下操作:


(array1+array2)不同,uniq
只在一个步骤而不是两个步骤中执行操作。

我感兴趣的是
set union
有两种优化方法,一种是通过执行两个循环来优化较小的数组,另一种是通过创建哈希然后转储值。我原以为
Set.new(array1+array2)
会有类似的性能,但速度要慢4倍-非常有趣@Anthony
Array#|
是用C编写的,而
Set
是用Ruby实现的。
[1,2,3,4] | [1,2,5,6] #=> [1,2,3,4,5,6]