我正在尝试使用foreach循环创建一个交集语句 例如
cand[0][1,2,5]
cand[1][2,5,6]
@result = cand[0] & cand[1]
每个
intersec = Array.new
cand.each do |c|
intersec = intersec & c
end
@result = intersec
我得到一个空数组
谢谢
亚历
答案 0 :(得分:1)
我认为你正在尝试做类似
的事情cand [0]& cand [1]& CAND [2]
您可以使用
执行此操作intersection = cand.reduce(:&)
让我知道它是否有效
答案 1 :(得分:0)
您是不是将intersec
创建为空白数组?然后尝试采用空白数组和其他现有数组=空数组的交集?
不太确定你在这里要做什么。
答案 2 :(得分:0)
我不完全确定你想要得到什么结果,但这是我注意到的一件事。尝试将intersec
数组初始化为cand
的第一个值。这样你就不会试图找到空数组和cand
元素的不存在的交集。