入力としてハッシュを取るRuby関数が必要です(キーはシンボルと数値は配列の数値です)。関連する配列の最初の値が同じであるキーのリストを返します。ここハッシュのためのRubyのgroup_byのようなメソッド
は一例であり:
h={
:k1 => [2,3,5,12],
:k2 => [9,5,6,10],
:k3 => [2,4,5, 8],
}
f(h) # should return [[:k1,:k3]]
... に関連付けられた2つの配列における同一の値として2表示されるので:K1と:K3。 returnオブジェクトは配列の配列です(キーのいくつかのグループは同じ配列の最初の値を持つことができるため)。
これまでのところ、私は配列そのものをグループ化:
def f(h)
h.values.group_by{|ary| ary.first}
end
# returns {2=>[[2, 3, 5, 12], [2, 4, 5, 8]], 9=>[[9, 5, 6, 10]]}
私は単純にハッシュのため、この方法に気づいていませんでした。どうも ! – JCLL