我有一个 50 行 2 列的矩阵,我想根据第二列字段的值的比较对它们进行排序。我的意思是,如果我的矩阵为:
[00][01]
[10][11]
[20][21]
[30][31]
[40][41]
[50][51]
我想比较 [01] 和 [11],如果 [01] 小于 [11] 我想将整个第二行与第一行交换,就像这样(例如):
[10][11]
[00][01]
[20][21]
[30][31]
[40][41]
[50][51]
我尝试使用 C# 并想出了这个算法,但它不起作用:
int temp1, temp2;
for (int i = 0; i < 50; i++)
{
for (int j = i + 1; j < 2; j++)
{
if (rating[i, j] < rating[i + 1, j])
{
temp1 = rating[i + 1, j - 1];
temp2 = rating[i + 1, j];
rating[i + 1, j - 1] = rating[i, j - 1];
rating[i + 1, j] = rating[i, j];
rating[i, j - 1] = temp1;
rating[i, j] = temp2;
}
}
}
有人能告诉我解决这个问题的关键吗,或者如果你有 c、c++ 或其他语言的答案,请与我们分享。
谢谢你。