Julia 数组基础

Julia 数组是一种多维数据结构,用于存储同类型元素。其核心特性包括动态大小、类型稳定性和高性能计算支持。

创建数组

# 一维数组(向量)
arr1 = [1, 2, 3]  
arr2 = collect(1:5)

# 二维数组(矩阵)
mat = [1 2; 3 4]  

# 特殊数组
zeros(3, 2)  # 3行2列零矩阵
rand(5)      # 5个随机数的向量

数组索引与切片

Julia 使用方括号进行索引,索引从1开始:

arr = [10, 20, 30, 40]
arr[2]         # 返回20
arr[end]       # 访问最后一个元素
arr[2:3]       # 切片返回[20, 30]

多维数组索引:

mat = [1 2; 3 4]
mat[1, 2]      # 返回第1行第2列元素(2)

数组操作

修改元素

arr[2] = 99    # 修改单个元素
mat[:, 1] = [0, 0]  # 修改整列

常用函数

push!(arr, 100)  # 追加元素
pop!(arr)       # 移除末尾元素
size(mat)       # 获取维度(返回元组)
length(arr)     # 元素总数

广播运算

Julia 使用点语法(.)进行元素级运算:

a = [1, 2, 3]
a .+ 1          # 返回[2, 3, 4]
sin.(a)         # 对每个元素求正弦

性能优化建议

  1. 预分配数组空间避免动态扩容:
result = Vector{Float64}(undef, 1000)

  1. 使用视图(view)减少内存拷贝:
subarr = @view mat[1:2, :]

  1. 类型标注提升性能:
arr = Float32[1.0, 2.0, 3.0]

Logo

鲲鹏昇腾开发者社区是面向全社会开放的“联接全球计算开发者,聚合华为+生态”的社区,内容涵盖鲲鹏、昇腾资源,帮助开发者快速获取所需的知识、经验、软件、工具、算力,支撑开发者易学、好用、成功,成为核心开发者。

更多推荐