Джулия - Увеличьте размер массива, вставив значение в начале - PullRequest
0 голосов
/ 07 мая 2018

У меня есть массив, заполненный некоторыми значениями. Например, после запуска следующий код:

array = zeros(10)

for i in 1:10
   array[i] = 2*i + 1
end

массив выглядит так:

10-element Array{Float64,1}:
  3.0
  5.0
  7.0
  9.0
 11.0
 13.0
 15.0
 17.0
 19.0

Теперь я хотел бы добавить новое значение в первую позицию, чтобы получить что-то вроде этого:

11-element Array{Float64,1}:
  1.0
  3.0
  5.0
  7.0
  9.0
 11.0
 13.0
 15.0
 17.0
 19.0

Как это сделать?

1 Ответ

0 голосов
/ 07 мая 2018

Похоже, вы хотите использовать pushfirst!. Эта функция изменяет ваш массив, вставляя новые значения в начало:

julia> pushfirst!(array, 1)
11-element Array{Float64,1}:
  1.0
  3.0
  5.0
  7.0
  9.0
 11.0
 13.0
 15.0
 17.0
 19.0
 21.0

(Н.Б. в Юлии 0.6 и ранее, pushfirst! назван unshift!.)

Вас также может заинтересовать insert!, который увеличивает коллекцию путем вставки значения по определенному индексу, и push!, который добавляет одно или несколько значений к конец коллекции.

См. Раздел Deques в документации, чтобы узнать о многих других полезных функциях для изменения коллекций.

...