public void ascendingOrder()
{
// helper class
double temp = 0;
for (int j = 0; j < numbers.Length; j++)
{
for (int i = 0; i < numbers.Length - 1; i++)
{
if (numbers[i] > numbers[i + 1])
{
temp = numbers[i];
numbers[i] = numbers[i + 1];
numbers[i + 1] = temp;
}
}
}
}
我需要代码首先对列进行排序,然后对行进行排序,如下例所示!
输入:
n = 3
2 2 1
3 53 4
32 5 3
输出:
1 2 2
3 3 54
4 32 53
答案 0 :(得分:1)
一些有用的链接:
答案 1 :(得分:1)
int[] array = new int[] { 3, 1, 4, 5, 2 };
Array.Sort<int>(array,
new Comparison<int>(
(i1, i2) => i1.CompareTo(i2)
));
答案 2 :(得分:0)
我相信这个人目前正在写考试,所以linq方法不会让他通过这个考试。 试试这段代码。
double[,] numbers = new double[,]{ { 1, 3, 2 }, { 4, 6, 5 }, { 7, 9, 8 } };
// helper class
double temp = 0;
for (int k = 0; k < 3; k++)
{
for (int j = 0; j < 2; j++)
{
for (int i = 1; i < 3; i++)
{
if (numbers[k,i] < numbers[k,j])
{
temp = numbers[k,i];
numbers[k,i] = numbers[k,j];
numbers[k,j] =temp;
}
}
}
}