2012-04-20 1 views
0

나는 엄청나게 복잡한 단어가 아니기 때문에 내가 선택한 엄청나게 큰 단어 사전을 가지고있는 앱을 만들고 있는데, 단어를 무작위로 선택하기를 원한다. 무작위로 선택하는 단어에는 문제가 없지만 이러한 단어를 모두 저장하는 가장 좋은 방법은 무엇입니까? 나는 NSMutable 배열을 사용하여 수천 개의 객체를 생성하는 메모리를 차지할 것 같은 느낌이 들었다. 그래서 다른 것을 사용할 수있다 ... 도움을 주겠다.무작위로 선택한 거대한 사전 : iPhone Dev

답변

0

모든 응용 프로그램을 수행하는 데 필요한 모든 액세스 무작위로 단어 (그래서 아무 키 기반의 쿼리, 또는 업데이트), 코어 데이터와 SQLite는 것에 대한 대안 인 경우 줄 바꿈 텍스트의 임의의 위치에 단지 fseek()이되어야합니다. 구분 된 단어를 찾은 다음 fscanf(dict,"%s\n%s\n",partial_word,full_word)으로 다음 단어를 읽을 수 있습니다.

다른 난수로 다시 시도하여 EOF를 처리하거나 fseek() 범위가 파일의 마지막 단어에 절대로 도달하지 못하도록 제한하십시오.

위의 개요와 관련된 문제점은 단어가 일정하게 선택되지 않는다는 것입니다. 긴 말을 따르는 단어에 편견이 있습니다. 단어를 유지하기 전에 strlen(partial_word) (또는 더 큰 난수)의 단어를 버리면 문제가되는 경우 배포에 도움이 될 수 있습니다.

관련 문제