CS 기초·알고리즘
Trie 기반 자동완성
오프라인에서도 동작하는 검색어 자동완성을 만들어야 합니다. 후보 단어 50만 개, 입력마다 상위 10개를 16ms 안에 돌려줘야 합니다. 자료구조를 어떻게 설계하나요?
면접관은 이 답을 어떻게 들을까요? 넘어갈지, 더 물어볼지, 떨어뜨릴지 알려 주고, 걸리는 문장은 콕 집어 줘요. 점수는 그대로예요.
오프라인에서도 동작하는 검색어 자동완성을 만들어야 합니다. 후보 단어 50만 개, 입력마다 상위 10개를 16ms 안에 돌려줘야 합니다. 자료구조를 어떻게 설계하나요?
Trie로 접두어를 O(길이)에 찾고, 각 노드에 서브트리 상위 k 후보를 미리 저장해 O(길이 + k)로 응답한다. 갱신은 서버가 만든 스냅샷을 통째로 교체한다.
CS 기초·알고리즘주관식기초
연락처 1만 명 목록에서 이름으로 검색하는 기능을 만듭니다. 순차 검색과 '정렬 후 이진 탐색'은 성능이 어떻게 다르고, 실제 앱에서는 어떤 구조를 쓰겠습니까?
#trie #search
iOS 시스템 디자인주관식기초
음악 앱의 검색 화면(입력 중 자동완성, 결과 목록, 최근 검색어)을 설계해 주세요. 타이핑할 때마다 요청이 나가지 않게 빈도를 어떻게 제어할지를 중심으로…
#autocomplete #search
CS 기초·알고리즘주관식기초
앱이 남긴 네트워크 로그 파일이 있습니다. 각 줄은 사용자ID(4자리) 페이지명 시작시각(hh:mm:ss) 종료시각(hh:mm:ss) 형식인데, 일부 줄은 깨져…
#top-k
아키텍처객관식심화
다음 Coordinator 구현에서 로그인 플로우가 끝난 뒤에도 LoginCoordinator가 메모리에 남습니다. 원인으로 가장 알맞은 것은? …
#memory