如何在Ruby中找到n个数组的交集?

时间:2013-04-30 16:53:10

标签: ruby arrays

[1, 2, 3] & [2, 3, 4]给了我们[2, 3]但是你如何得到n个数组的交集?

[[1, 2, 3], [2, 3, 4], [1, 3, 4]].something会给[3]

循环&有效,但必须有更好的方法。

2 个答案:

答案 0 :(得分:8)

[[1, 2, 3], [2, 3, 4], [1, 3, 4]].inject(:&) #=> [3]

答案 1 :(得分:0)

Just&所有数组。假设您有3个阵列。

a = [1,2,3]
b = [2,3,4]
c = [3,4,5]

a & b & c
=> [3]