2010-12-14 5 views
0

자동 완성, 자동 수정, 맞춤법 검사 등의 기능을 구현할 수있는 사전을 구현하는 인터뷰 질문을 만났습니다 ...사전의 자동 완성을 구현하는 데 사용해야하는 데이터베이스

저는 실제로 (위치 국가, 도시 및 우편 번호와 같이) 모든 단어를 저장하는 데 사용해야하는 데이터베이스를 알고 싶었습니다.

저를 제안하십시오이 당신이 말하는 모든 데이터베이스 또는 솔루션

이 나를 인도 환영 모든 링크를 달성 할 수있는 최적의 데이터베이스와 자바의 모든 프레임 워크 ...

답변

3

특징 여기에는 중요한 UI 구성 요소가 있기 때문에 일반적으로 데이터, 레이어가 아닌 응용 프로그램에 주로 구현됩니다. 모든 데이터베이스 (또는 플랫 파일)는 단어 목록을 저장할 수 있습니다.

문제가있는 영역에 대해 자세히 설명해 주실 수 있습니까? (귀하의 질문에 정말 경우가이 사이트에 대한 너무 일반적이다, "어떻게? 데이터베이스를 사용합니까", 당신은 몇 가지 인터넷 검색을해야한다. 스타터 JDBC에보고하십시오)

0

자동을위한 간단한 솔루션 완료는 Navigable Set을 사용하여 주어진 String으로 시작하는 모든 항목을 찾습니다.

자동 수정/맞춤법 검사의 경우 올바른 단어 세트를 사용하고 단어처럼 들리는 모든 단어에 대해 "소리와 비슷한"인코더와 다중지도 (목록의지도)를 사용하는 것이 좋습니다. 입력되었습니다.

0

가장 간단한 해결책은 'trie'를 사용하는 것입니다. 인덱스 된 자식 노드에서 characeters를 나타내는 데이터 구조입니다. http://en.wikipedia.org/wiki/Trie 자세한 정보가 있습니다. 이것은 각각의 키 스트로크 끝에 당신이 일련의 주장과 자동 완성 목록을 수정하려고 할 때 메모리에서 수행되어야합니다. 또한 드롭 다운이나 텍스트 필드와 같은 UI 구성 요소에 연결되어 있습니다.

관련 문제