Это решает ваш запрос на:
"первый элемент на определенную позицию"
def move_first_element(a, x)
first = a.shift
a.insert(x, first)
end
, если вы запустите это:
(0..6).each do |i|
a = [0,1,2,3,4,5,6]
move_first_element(a, i)
puts "First element to index: #{i}"
puts "#{a}"
end
результаты:
First element to index: 0
[0, 1, 2, 3, 4, 5, 6]
First element to index: 1
[1, 0, 2, 3, 4, 5, 6]
First element to index: 2
[1, 2, 0, 3, 4, 5, 6]
First element to index: 3
[1, 2, 3, 0, 4, 5, 6]
First element to index: 4
[1, 2, 3, 4, 0, 5, 6]
First element to index: 5
[1, 2, 3, 4, 5, 0, 6]
First element to index: 6
[1, 2, 3, 4, 5, 6, 0]