메모리 (RAM)에 백만/수십억 개의 레코드 (이름과 정수가 포함 된 레코드로 가정)를 저장하는 데 가장 적합한 데이터 구조는 무엇입니까? 최소 검색 시간 (우선 순위 1 위) 및 메모리 효율 (2 위 우선 순위)의 측면에서 가장 좋습니까? 패트리샤 나무 야? 이보다 더 좋은 점은 없습니까?수십억 개의 정수를 저장하는 데이터 구조
검색 키는 정수입니다 (예 : 32 비트 임의의 정수). 모든 레코드는 RAM에 있습니다 (충분한 RAM을 사용할 수 있다고 가정). C에서
, 플랫폼 리눅스는 ..
는 기본적으로 내 서버 프로그램은 사용자에게 32 비트 임의의 키를 할당하고, 나는/검색 효율적으로 기록을 삭제할 수 있도록 해당 사용자 레코드를 저장할. 데이터 구조가 잘 채워질 것이라고 가정 할 수 있습니다.
이름이나 전화 번호를 찾으십니까? 아니면 둘다? –
레코드 집합이 자주 업데이트되고 얼마나 완전하게 업데이트됩니까? 정수의 분포는 어떻게 생겼습니까? 모든 이름을 가진 해시 테이블을 사용 가능한 메모리에 편안하게 맞출 수 있습니까? – reinierpost