首页 > 解决方案 > Julia - 增加数组的大小,在开头插入一个值

问题描述

我有一个填充了一些值的数组。例如,运行以下代码后:

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

怎么做?

标签: arraysjulia

解决方案


看起来你想使用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

(在 Julia 0.6 及更早的版本中,NBpushfirst!被命名为 unshift!.)

您可能还对 感兴趣insert!,它通过在特定索引处插入一个push!值来扩展集合,并将一个或多个值添加到集合的末尾。

有关修改集合的更多有用功能,请参阅文档的Deques部分。


推荐阅读