配列内の各配列要素の交点を見つけて、交点を取得したいと思います。
入力は配列の配列です。たとえば、「以下のこのスクリプトで説明する「list_arrays」」「「filter」は、観測される交差の全長に適用する必要がある制限です。出力は、次のような配列として期待されます」[[2 、4]]」
list_arrays = [[1, 2, 3, 4], [2, 5, 6], [1, 5, 8], [8, 2, 4]]
filter = 2
first_element_array = Array.new
list_arrays.each_with_index do |each_array1, index1|
list_arrays.each_with_index do |each_array2, index2|
unless index1 < index2
intersection = each_array1 & each_array2
if intersection.length == filter.to_i
first_element_array.push(intersection)
end
end
end
end
puts first_element_array
配列の配列が長すぎるため(百万行)、この上記の手順は実行時間が長くなります。私はこの問題を処理するための簡単で素朴な方法が必要です。誰かがそれについて簡単なアイデアを持っていますか?