RS
Size: a a a
RS
С
RS
{
"a" => {
"b" => {
"c" => {}
},
"d" => {
"e" => {}
},
"f" => {
"g" => {
"h" => {}
},
"i" => {
"k" => {}
}
}
}
}[
["a", "b", "c"],
["a", "d", "e"],
["a", "f", "g", "h"],
["a", "f", "i", "k"],
]RS
RS
def keys_map(hash, arr = [], current = [])
hash.map do |k,v|
new_arr = current.dup
new_arr << k
if v.class == Hash && v.keys.count > 0
keys_map(v, arr, new_arr)
else
arr << new_arr
end
end
arr
endRK
RK
RS
MS
MS
MS
С
{
"a" => {
"b" => {
"c" => {}
},
"d" => {
"e" => {}
},
"f" => {
"g" => {
"h" => {}
},
"i" => {
"k" => {}
}
}
}
}[
["a", "b", "c"],
["a", "d", "e"],
["a", "f", "g", "h"],
["a", "f", "i", "k"],
]С
MS
С
MS
MS
MS
С
MS