자바에서 pinyin4j 패키지를 사용하여 한자를 로마자 (병음)로 변환 중입니다. 그러나 이것은 종종 한 문자에 대해 여러 개의 병음을 산출합니다 (동일한 문자는 다른 발음을 가짐). 말하자면, 문자 C1은 2 개의 병음 형태 p1과 p2로 변환되고, 문자 C2는 3 개의 병음 형태, q1, q2, q3으로 변환됩니다.자바 문자열과 해시 세트 - 회원 일치
단어에 C1C2를 결합하면 2 * 3 = 6 조합이됩니다. 일반적으로 이들 중 하나만 실제 단어입니다. 필자는 작성한 어휘집 텍스트 파일에 대해 이러한 조합을 검사하고 싶습니다. 많은 행은 어휘 항목 인 \ w로 시작합니다 (예를 들어 어휘집에 6 가지 조합 중 p1q2 만 있음). 어휘집 파일을 해시 셋트로 읽는 것에 대해 생각하고 있습니다. 그러나 나는이 모든 과정을 최선으로 구현하는 방법에 대해 확신하지 못한다. 어떤 제안?
HashSet이 정상적으로 작동합니다. 어휘집 (엔트리)의 크기를 안다면, 충분한 용량을 가진 HashSet을 미리 할당하여 로딩하는 동안 커질 필요가 없으므로 시간을 절약 할 수 있습니다. 어휘집이 크다면 다중 레벨 데이터 구조를 조사해야 할 것입니다. –