wordize 요소 집합 (반복 없음)을 보유하고 빠른 삽입 (amortized O (1))을 지원하는 공간 효율적인 데이터 구조를 찾고 있습니다. "공간 효율적"이란 이상적으로 요소 를 저장하는 단어를 의미 합니다.
집합이되는 것은 질문의 중요한 부분입니다. 각 요소를 번 추가 하면 사용 된 공간은 일 수 없습니다 .
구조는 또한 요소를 효율적으로 나열하는 것을 지원해야합니다. 제정신 구조는 아무 문제가 없습니다. (빠른 멤버쉽 쿼리는 플러스입니다.)
2
해시 테이블이 트릭을 수행하지 않는 이유가 있습니까?
—
Dave
@ 데이브 : 공간 요구 사항을 충족시키는 것으로 생각하지 않지만 충분히 엄격한 동적 크기 조정 일정이 작동한다고 가정합니다. 그러나 일반적으로 실제로 코드를 작성하기 전에 무엇이 있는지 확인하고 싶습니다.
—
찰스
동적 크기 조정으로 상각 된 을 얻으려면 크기를 일정한 비율로 늘려야합니다 을 엄격하게 충족하려면 공간 요구 사항을 충족시키지 못한다고 생각합니다 . n + o ( n )
—
Dave
자, 이것은 약간 어리석은 일이지만 우주가 일정한 크기 (단어 크기 요소) 인 경우 전체 비트 벡터의 크기는 .
—
Magnus Lie Hetland
@ Magnus : 질문에서 O 및 O 표기의 실제 기능이 단어 크기에 의존하지 않는다는 것을 의미한다고 생각합니다.
—
이토 쓰요시