我想在大小为1000的列表中保存重复1000次的zarb
函数的结果。然后我必须增加索引每个计算的列表,以避免将下一个计算保存在前一个计算的相同索引处。我怎样才能做到这一点?如何增加列表的索引以保存列表中下一个索引的下一个数字
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));
}
扎布功能
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;
}
你不需要像数组一样明确地增加索引。 – Dexters
这个问题最好使用完整的代码示例来解决。 List可能不是问题。可能会更好,因为“为什么我的方法的返回值包括以前方法调用的总和?” – maxwellb