F# 如何转换矩阵?
我是新来的 我想转置一个矩阵,我可以像在任何其他语言中一样使用循环,但我想不使用外循环 我的矩阵声明:F# 如何转换矩阵?,f#,f#-3.0,F#,F# 3.0,我是新来的 我想转置一个矩阵,我可以像在任何其他语言中一样使用循环,但我想不使用外循环 我的矩阵声明: let BuildEmptyBord:BordCell[][]=[|for i in 1..3->[|for i in 1..3->BordCell.Empty|]|] 因此,请帮助对于作为锯齿阵列的矩阵,您可以使用array.init函数,然后使用交换的维度重新创建矩阵,如下所示: let transpose (matrix:_ [][]) = if matrix.L
let BuildEmptyBord:BordCell[][]=[|for i in 1..3->[|for i in 1..3->BordCell.Empty|]|]
因此,请帮助对于作为锯齿阵列的矩阵,您可以使用
array.init
函数,然后使用交换的维度重新创建矩阵,如下所示:
let transpose (matrix:_ [][]) =
if matrix.Length = 0 then failwith "Invalid matrix"
Array.init matrix.[0].Length (fun i ->
Array.init matrix.Length (fun j ->
matrix.[j].[i]))
可能重复,但这是列表矩阵,我的矩阵是数组矩阵虽然这个代码示例可能会回答这个问题,但最好对您的答案进行一些必要的解释。现在看来,这个答案对未来的读者几乎没有任何价值。