Julia中元组元素的访问
我有三个这样的矩阵:Julia中元组元素的访问,julia,Julia,我有三个这样的矩阵: f_vp= Array{tuple{Float64,Float64}}(n,m) f_value1=zeros(n,m) f_value2=zeros(n,m) maximum(f_value2-f_value1) f_vp中每个元组的第一个元素用于f_value1,第二个元素用于f_value2。因此我必须有两个l for i=1:m for j=1:n f_value1[j,i] = f_vp[j,i][1]
f_vp= Array{tuple{Float64,Float64}}(n,m)
f_value1=zeros(n,m)
f_value2=zeros(n,m)
maximum(f_value2-f_value1)
f_vp
中每个元组的第一个元素用于f_value1
,第二个元素用于f_value2
。因此我必须有两个l
for i=1:m
for j=1:n
f_value1[j,i] = f_vp[j,i][1]
f_value2[j,i] = f_vp[j,i][2]
end
end
我怎样才能做得更快?
如果我想要这样的东西:
f_vp= Array{tuple{Float64,Float64}}(n,m)
f_value1=zeros(n,m)
f_value2=zeros(n,m)
maximum(f_value2-f_value1)
我可以通过
f_vp
而不是f_value1
和f_value2
来实现这一点吗?实现已经很快了,但是请注意,您可以更简洁地编写这样的循环
for i=1:m, j = 1:n
....
end
WRT到最大值(f_值2.-f_值1)
您也可以执行类似(x->x[2]-x[1])(f_-vp)
的操作,但速度不应该更快。如果您愿意,可以使用基准测试工具进行尝试