【发布时间】:2012-02-20 18:57:52
【问题描述】:
我想在数组中存储一个对称矩阵
对于我正在做的矩阵
double[,] mat = new double[size,size];
for (int i = 0; i < size; i++)
{
for (int j = 0; j <= i; j++)
mat[i, j] = mat[j, i] = (n * other_matrix[i,j]);
}
如果我想存储在一个数组中
double[] mat = new double[size*size];
而不是
double[,] mat
最有效的方法是什么?
使用mat[i*n+j]?
【问题讨论】:
-
哪一个是问题?内存还是 CPU 性能?
-
我还不能写评论 -
size有什么限制? -
@Saeed Amiri 表演
-
所以正常操作(将所有数据保存在 RAM 中)就足够了。
-
如果矩阵是稀疏的,您将需要一个 spart 矩阵实用程序。