如何在Visual Studio C#中对2D数组(行方式)进行排序?

时间:2010-10-28 08:38:54

标签: c#

需要您的专家指导,如何在Visual Studio C#中按行排序(意味着独立地考虑每一行并独立于2D数组排序所有行)。例如

第一排:5 4 3 6 第二排:2 3 1 4

排序: 第一排:3 4 5 6 第二排:1 2 3 4

有一个名为Array.Sort()的方法,但它仅适用于1D数组。 感谢致敬 阿萨德

2 个答案:

答案 0 :(得分:1)

如果你的2D数组是一个锯齿状的数组,如:

int[][] foo = new int[][] { 
    new int[] { 5, 4, 3, 6 }, 
    new int[] { 2, 3, 1, 4 } };

你可以使用LINQ:

来做到这一点
for (int i = 0; i < foo.Length; i++)
    foo[i] = foo[i].OrderBy(s => s).ToArray();

答案 1 :(得分:0)

你的例子是一维数组,二维数组你的意思是

int[2,2] foo;

所以你会做一些像。

foo[0,0] = 0;
foo[0,1] = 1;
foo[1,0] = 1;
foo[1,1] = 1;

请澄清。