값을 조회하는 데 사용하는 배열이 있습니다. 처음 두 값을 사용하여 n 행을 얻습니다. 예를 들어 첫 번째 열에는 2가 있고 두 번째 열에는 7이있는 모든 행이 있습니다. 이 값을 구하는 가장 빠른 방법은 무엇입니까? 지금 값을 얻기 위해 루프를 사용조회를 최적화하는 중
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}
};
당신은 기준과 일치 iCombo의 색인 목록을 유지할 수
내 질문의 '편집'부분에서 내가 말하는 것은 무엇입니까? – Jeroen
Sry, 편집자와 교차 게시했습니다. 나는 너의 편집을 참조하기 위해 나의 대답을 편집했다. – TechNeilogy
감사합니다. 나는 이것에서 매 밀리 세컨드를 짜낼 필요가 있고이 제안은 많은 도움이된다. – Jeroen