【问题标题】:Matrix in C#: rectangular matrix [][] vs multidimensional arrays[,]? [closed]C# 中的矩阵:矩形矩阵 [][] 与多维数组 [,]? [关闭]
【发布时间】:2016-06-09 00:46:37
【问题描述】:

我需要使用大小在 100x100 到 1000x1000 之间的方阵。

我只需要读取矩阵,修改一些值并复制矩阵(很多很多次!)

使用矩形形式,如 int[][] 或多维形式,如 int[,] 更有效?

或者有更好的方法或更好的类来使用?

【问题讨论】:

标签: c# arrays matrix multidimensional-array


【解决方案1】:

在选择数组时涉及两个因素,即内存和性能。多维数组比交错数组(数组的数组)具有更好的内存管理。在性能的情况下,锯齿状数组是最快的可能是由于 CLR 的执行不力。很明显,当您有一个需要多次遍历的矩阵形式时,最好使用锯齿状数组,尽管它会占用一些内存。

【讨论】: