我有一個數組,我用它來查找值。我使用前兩個值來獲得n行。例如,所有在第一列中有2個而第二個中有7個的行。 什麼是最快(我的意思是微優化)的方式來獲得這些值? 我現在用一個for循環來獲取值:優化查找
int l = SpreadLookupTable.GetLength(0);
for (int iCombo = 0; iCombo < l; iCombo++) {
bool o = SpreadLookupTable[iCombo, 0] == perWeek
&& SpreadLookupTable[iCombo, 1] == workDays;
if (o) {
// do stuff
}
}
編輯: 它只有大約60行。如果我製作3個嵌套數組,所以我可以直接使用前2列作爲索引,比如t [2] [7],然後我只會迭代我真正需要的行。那會更快嗎?
表:
private static int[,] SpreadLookupTable = {
{2, 7, 1, 0, 0, 1, 0, 0, 0},
{2, 7, 1, 0, 0, 0, 1, 0, 0},
{2, 7, 0, 1, 0, 0, 1, 0, 0},
...
{2, 3, 1, 1, 0, 0, 0, 0, 0},
{2, 3, 1, 0, 1, 0, 0, 0, 0},
{2, 3, 0, 1, 1, 0, 0, 0, 0}
};
這就是我在我的問題的'編輯'部分所說的? – Jeroen 2010-08-05 14:36:07
Sry,我交叉發佈你的編輯。我編輯*我的*答案來引用你的編輯,哈哈。 – TechNeilogy 2010-08-05 14:37:44
謝謝。我需要擠出每毫秒,這些建議幫助很大。 – Jeroen 2010-08-05 14:42:26