我有一个float [n,128]数组。现在我想每一行转换成一个单独的载体如下:将矩阵(float)的每一行转换为向量
//这里的代码是伪代码
int n=48;
float[,] arrFloat=new float[n,128];
VectorOfFloat v1 = new VectorOfFloat(128); // Vn equals to number of n
v1= arrFloat[0];
v2=arrFloat[1]
.
.
.
.
Vn
什么是优化的方式?
我可能写的代码如下,但是我觉得应该有一个更好的办法:
List<VectorOfFloat> descriptorVec = new List<VectorOfFloat>();
VectorOfFloat v1 = new VectorOfFloat();
var temp = new float[128];
for (int i = 0; i < descriptors1.GetLength(0); i++)
{
for (int j = 0; j < descriptors1.GetLength(1); j++)
{
temp[j] = descriptors1[0, j];
}
v1.Push(temp);
descriptorVec.Add(v1);
}
循环出了什么问题? (你可以很容易地显示代码...) –
我想知道是否有另一种技术[更简洁],如Linq,lamda表达式等 –