Справочная информация: В Ruby у меня есть двухмерный массив, подобный следующему:
count[[english_word, french_word]] = ...
pp count
{["my", "une"]=>0.0,
["my", "voiture"]=>0.2,
["red", "maison"]=>0.9,
...
}
(Причина, по которой я сделал это вместо count[english_word][french_word]
, заключалась в том, что я не был уверен, какобойти ошибки Undef, и я увидел этот синтаксис, предложенный при переполнении стека)
Я заполнил структуру данных парой вложенных циклов, используя массивы english_vocab
и french_vocab
всех слов.
Вопрос: Я бы хотел получить максимум для данного английского слова.
english_word = 'foo'
max_count = 0
french_vocab.each do |french_word|
count = count[[english_word, french_word]]
if count > max_count
max_count = count
end
end
Я могу сделать это с помощью простого вложенного цикла for, ноМне интересно, есть ли более хороший Ruby-ih способ сделать то же самое?