2013-06-27 4 views

답변

2

Excel 표를 CSV (쉼표로 구분 된 값) 형식으로 내보내는 것이 좋습니다.

가능하다면, 당신은 전체 파일을로드하고 기본적으로 Divide and Conquer

사용하여 검색을 수행 할 수 있습니다, 그 뒤에 아이디어는 예를 들어, 찾고있는 값을 포함 알파벳 순으로 정렬 컬럼입니다. 우리는 이름 란에서 "피터"라는 이름을 찾고 있습니다. 그보다 열의 중앙에있는 값 (예 : "malcom")을 사용하고 찾고있는 값이 중간 값보다 앞뒤에 있는지 확인하십시오. 이 경우 정렬로 인해 "malcom"이후에 있어야하므로 표를 반으로 분할하고 표의 절반에 따라 검색을 계속하십시오. 테이블에 남아있는 레코드가 가득 찰 때까지 재귀 적으로 반복 할 수 있습니다 (예를 들어 10이라고 말하면 됨). 값을 찾기 위해 정기적으로 검색을 수행하십시오.

나는 마지막 논문에서 그러한 일을 한 번했습니다. 내 구현은 C++로 작성되었으며 해시 테이블을 사용했습니다. 그것은 Excel보다 훨씬 빠릅니다.

+0

나는이 알고리즘을 사용하여 5 초 이내에 수백만 행의 두 테이블을 교차 또는 제외로 만들었습니다. 따라서 올바르게 구현되면 빠른 속도로 빨라질 수 있습니다. – SlapY