Динамическое хранение значений матрицы в 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