我想保存zarb
函数的结果,该函数在大小为1000的列表中重复1000次。然后我必须为每次计算增加列表的索引,以避免将下一个计算保存在与前一个索引相同。我怎么能这样做?
var results = new List<float>(1000);
for (int z = 0; z < 1000; z++)
{
results.Add(zarb(sc,z));
//increase the index of resukts
}
foreach (var resultwithindex in results.Select((r, index) => new { result = r, Index = index }).OrderByDescending(r => r.result).Take(20))
{
MessageBox.Show(string.Format("{0}: {1}", resultwithindex.Index, resultwithindex.result));
}
Zarb功能
public float zarb(int userid, int itemid)
{
float[] u_f = a[userid];
float[] i_f = b[itemid];
for (int i = 0; i < u_f.Length; i++)
{
result += u_f[i] * i_f[i];
}
return result;
}
答案 0 :(得分:1)
不,不。 Add
方法(令人惊讶地)将项目添加到列表中。它不会取代任何东西。对于List<T>
,您应该read MSDN documentation。此外,不要害怕尝试并在询问之前看到结果 - 您将节省时间。
答案 1 :(得分:0)
也许我不明白这个问题,但你不需要索引列表。 add方法将处理它。