Swift 中的任意矩阵或数组大小

Arbitrary matrix or array size in Swift

我熟悉使用 NumPy 在 Python 中创建 MxN 矩阵,例如:

In [1]: import numpy as np

In [2]: np.zeros((10,5))
Out[2]:
array([[ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.]]) 

在 Swift 中,SIMD 可以创建小矩阵并对其执行运算(见下文),但它似乎限于 4x4 矩阵的最大尺寸。

import simd

let mat = float2x2([[1,2],[3,4]])
mat[0]*9

有没有办法在 Swift 中定义任意大小的 MxN 维矩阵并对该矩阵执行运算?

如果 "matrix",你的意思是 "array of arrays" 那么你可以使用以下语法:

var matrix = Array(count: 10, repeatedValue: Array(count: 5, repeatedValue: 0.0))

这将创建一个 10 x 5 的零矩阵。