이 흥미로운 데이터 구조 질문에 최적화 된 솔루션을 찾는데 도와주세요 :데이터 구조 문제
약 1000 만 단어를 포함하는 파일을 감안할 때- , 데이터 구조를 설계 아나그램
- 하는 프로그램을 작성을 찾기 위해 가장 복잡한 단어 10 개를 파일에 표시하여 프로그램이 모든 복잡성 측정에서 효율적이되도록하십시오.
- 수백만 줄의 데이터가있는 파일이 있습니다. 두 줄만 동일합니다. 나머지는 모두 고유합니다. 각 라인은 길어서 메모리에 맞지 않을 수도 있습니다. 동일한 라인을 찾는 가장 효율적인 솔루션은 무엇입니까?
추가 몇 가지 추가 질문 :
4) (당신은 배열의 문자열 중 하나는 시작 문자열과 끝과 같은 다른 하나로 표시됩니다 3. 길이의 문자열의 배열을 제공됩니다) MS에 의해 요청 끈. 중간 문자열이 이전 문자열과 단 하나의 문자 만 달라야하고 문자열이 입력 배열에 있어야한다는 조건하에 시작 문자열을 종료 문자열로 변환해야합니다. 예. 입력
Array: {"fat", "tab", "eat", "see", "tub", "fab", "rat", "sel"}
Start: "fat"
End: "tub"
Then the output should be
fat -> fab -> tab -> tub
경우 나는 세 번째를 해결하기 위해 노력했고, 두 가지 appraoches을 마련했다 : 1) 모든 라인의 첫 번째 단어를 읽은 후 그의 첫 번째 단어하지 않는 모든 라인을 제거 다른 줄의 첫 단어와 일치합니다. 이런 식으로 남은 줄의 연속적인 단어가 계속 나오게 될 때까지 두 줄만 남습니다. 너는 너의 대답을 얻었다! 2) 각 행을 더 작은 표현으로 변환하십시오. 이는 각 단어를 짧은 바이너리 형식으로 코딩 한 다음 각 행을 나타내는 비트를 XOR하는 방식으로 얻을 수 있습니다.
편집 : 이제는 데이터 구조 문제가 많았습니다. 누구든지 여기에서 토론하고 싶다면 좀 더 게시 할 수 있습니다.
@ S.Lott : 'Ashish가 작업을 수행 할 수 있습니다. 나는 봉급을 받는다. –
@ Jason Punyon : 내 아이디어 였기 때문에, 나는 15 %를 원한다. 나머지는 가질 수 있습니다. –
그들은 재미있게 보입니다 - 지금까지 코드를 게시하십시오;) – KevinDTimm