我有這樣的:重新排列不同類型的陣列與對應
string[] old = new string[] {"a","b","c","d"};
表示2D陣列的列的值:
double[,] values = new double[,] {{1,2,3,4},{5,6,7,8},{1,3,5,9}};
如何使用LINQ reoder這2D陣列的列將字符串數組值重新排序爲
string[] newer = new string[] {"c","a","d","b"};
我正在使用輔助int數組來保留新索引,但我想用LINQ! :)
int[] aux = new int[old.Length];
for (int i = 0; i < newer.Length; i++)
{
for (int j = 0; j < old.Length; j++)
{
if (old[j] == newer[i])
{
aux[i] = j;
}
}
}
double[,] newvalues = new double[values.GetLength(0), values.GetLength(1)];
for (int i = 0; i < values.GetLength(0); i++)
{
for (int j = 0; j < values.GetLength(1); j++)
{
newvalues[i, j] = values[i, aux[j]];
}
}
values = newvalues;
它必須在矩形的[[,]'數組上,還是可以在鋸齒形的[] []'數組上? – jason
矩形,我修正了代碼...'newvalues [i,j] = values [i,aux [j]];' – user1204
很好,兩者之間的轉換很容易。 – jason