Как узнать все индексы заданного элемента в массиве на ruby?

Пользователь

от otha_marks , в категории: Ruby , год назад

Как узнать все индексы заданного элемента в массиве на ruby?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от jazmyne , год назад

@otha_marks 

Для того, чтобы найти все индексы заданного элемента в массиве на Ruby, можно воспользоваться методом each_with_index.


Вот пример:

1
2
3
4
5
6
7
8
9
arr = [1, 2, 3, 2, 4, 2, 5]
element = 2
indices = []

arr.each_with_index do |value, index|
  indices << index if value == element
end

puts indices # => [1, 3, 5]


В этом примере мы создаем массив arr, который содержит несколько повторяющихся значений. Затем мы выбираем элемент, который мы хотим найти (element = 2) и создаем пустой массив indices, который будет содержать индексы, где мы найдем этот элемент.


Затем мы используем метод each_with_index для прохода по всем элементам массива. Если значение элемента равно element, мы добавляем индекс в массив indices.


В конце мы выводим массив indices, который содержит все индексы элемента 2 в массиве arr.