CS 기초·알고리즘
TTL이 있는 LRU 캐시
LRU 캐시를 구현한 뒤 면접관이 이어서 묻습니다. "이제 각 항목이 저장된 지 일정 시간이 지나면 만료되게 해 주세요. 그러면 무엇이 비싸지나요?" 만료를 가장 싸게 검사하는 방식과 그 방식이 치르는 대가를 설명해 주세요.
면접관은 이 답을 어떻게 들을까요? 넘어갈지, 더 물어볼지, 떨어뜨릴지 알려 주고, 걸리는 문장은 콕 집어 줘요. 점수는 그대로예요.
LRU 캐시를 구현한 뒤 면접관이 이어서 묻습니다. "이제 각 항목이 저장된 지 일정 시간이 지나면 만료되게 해 주세요. 그러면 무엇이 비싸지나요?" 만료를 가장 싸게 검사하는 방식과 그 방식이 치르는 대가를 설명해 주세요.
각 노드에 만료 시각을 저장한다. 지연 만료: get/put 때 그 항목만 검사해 만료면 제거, O(1) 유지 but 만료된 항목이 메모리를 차지하고 LRU 퇴출 대상이 왜곡된다. 실무는 지연 만료 + 낮은 빈도 스윕 조합.
데이터 저장객관식기초
이미지 캐시로 LRU 를 채택했습니다. LRU 에 대한 설명으로 옳은 것을 모두 고르세요.
#lru #cache #linked-list #hashmap
CS 기초·알고리즘주관식심화
메모리 이미지 캐시를 LRU로 직접 구현해야 합니다. 어떤 자료구조로 get/put을 O(1)로 만들 수 있나요?
#lru #cache #linked-list
데이터 저장주관식심화
15분 안에 "값에 만료 시각이 포함된 키-값 저장소" 를 설계해 보라고 합니다. set(key, value, ttl) 과 get(key) 가 만료된 값을…
#ttl #cache
데이터 저장주관식기초
NSCache 가 있는데 왜 이미지 라이브러리들은 LRU 캐시를 직접 만드나요?
#lru #linked-list