我有一個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++或其他LAN的答案guage請與我們分享。
謝謝。
部分它確實工作。看到圖片: http://im41.gulfup.com/TrGUn.bmp 在那裏我指着紅色的第二列有5號應該是最高值。應該是這樣的: 。5 。5 。5 。5 。4 .. 4 。4 ..........等等。 –
我編輯了代碼中的一個小錯誤。 –
完整的代碼是如此冗長和複雜,只有這個需求才能完成實現。 –