Если вы хотите, чтобы найти индекс минимального элемента, вы можете использовать Enumerable#enum_for
для получить массив пар элементов-индексов и найти минимум из них с Enumerable#min
(что также будет минимальным для исходного массива).
% irb
irb> require 'enumerator'
#=> true
irb> array = %w{ the quick brown fox jumped over the lazy dog }
#=> ["the", "quick", "brown", "fox", "jumped", "over", "the", "lazy", "dog"]
irb> array.enum_for(:each_with_index).min
#=> ["brown", 2]
Если вы хотите, чтобы обвил его к конкретным индексам массива:
irb> start = 3
#=> 3
irb> stop = 7
#=> 7
irb> array[start..stop].enum_for(:each_with_index).min
#=> ["fox", 0]
irb> array[start..stop].enum_for(:each_with_index).min.last + start
#=> 3
что делает вас означает «лучше»? Более эффективный или тот, который требует меньше строк кода? – Rahul
Извините, я хотел сказать, что в рубине лучше. – unj2