Динамическое хранение значений матрицы в C#
Я пытаюсь создать приложение, в 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#??
3 ответов
для динамического хранения вы должны знать основы 2d и 3d
см. здесь
2-D массивы:dotnetperls.com/2d-array
многомерные массивы:msdn.microsoft.com/en-us/library/2yd9wwz4 (v=против 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