在c#中动态存储矩阵值
本文关键字:存储矩阵 动态 | 更新日期: 2023-09-27 17:50:48
我正在尝试在c#.net中构建一个应用程序
这里我有两个相同大小的单维数组例如,我有如下结构的矩阵M和N:
M[0] M[1] M[2] M[3] M[4]
N[0]
N[1]
N[2]
N[3]
N[4]
这里我赋值M[0]....,N[0]……这样我就得到了这样一个矩阵:
5 6 4 8
4
8
7
2
注:我设置这个值是为了动态生成。到现在为止,我已经成功了。
但是我喜欢将值存储在另一个数组中(可能是锯齿数组或其他)在2x2矩阵中,格式如下:
A[0] A[1]
B[0] 5 4 (this is the values of M[0] and N[0])
B[1] 6 4 (this is the values of M[1] and N[0])
..............
B[4] 5 8 (this is the values of M[0] and N[1])
当N[0]的第一行完成后,它必须继续下一行。我只需要一些如何在c#中实现这个??
对于动态存储,您应该了解2d和3d的基础知识
参考这里
二维数组:dotnetperls.com/2d-array
多维数组:msdn.microsoft.com/en-us/library/2yd9wwz4(v=vs.71).aspx
不能对数组迟赋值。我建议您使用List<List<int>>
,下面是一个示例:
List<List<int>> val = new List<List<int>>();
List<int> M = new List<int>() { 1, 2, 3, 4, 5 };
List<int> N = new List<int>() { 5, 4, 3, 2, 1 };
foreach (int m in M)
{
foreach (int n in N)
{
val.Add(new List<int> { m, n });
}
}
stackoverflow.com/questions/594853/dynamic-array-in-c-sharp检查上面的线程。或者查看下面的来源。
msdn.microsoft.com/en-us/library/system.collections.arraylist.aspx