阵列要做出这样的转换,但没有得到正确的结果哈希与价值
old = {
1 => %w(A E I O U L N R S T),
2 => %w(D G),
3 => %w(B C M P),
4 => %w(F H V W Y),
5 => %w(K),
8 => %w(J X),
10 => %w(Q Z)
}
expected = {
'a' => 1, 'b' => 3, 'c' => 3, 'd' => 2, 'e' => 1,
'f' => 4, 'g' => 2, 'h' => 4, 'i' => 1, 'j' => 8,
'k' => 5, 'l' => 1, 'm' => 3, 'n' => 1, 'o' => 1,
'p' => 3, 'q' => 10, 'r' => 1, 's' => 1, 't' => 1,
'u' => 1, 'v' => 4, 'w' => 4, 'x' => 8, 'y' => 4,
'z' => 10
}
实现我的嵌套的循环转换。我认为,虽然内循环循环,外循环不会增加。这里是我的代码:
class Etl
def self.transform(old)
result = {}
old.each do |key, value|
value.each_with_index do |v, i|
result[v[i]] = key
end
end
result
end
end
逆散列部很有趣,但作为一个整体,这是一个不好的问题,因为downcasing无关,用它做。你应该把它们分成单独的问题。 – sawa