CS 기초·알고리즘
스트림 이동 평균
화면의 프레임 시간이 매 프레임 들어오는 스트림에서, 언제 물어봐도 "최근 k개 프레임의 평균 시간"을 즉시 돌려주는 타입을 설계해 주세요. 매초 60번 호출되므로 계산이 가벼워야 합니다. 자료구조와 갱신 방식, 복잡도를 설명하세요.
면접관은 이 답을 어떻게 들을까요? 넘어갈지, 더 물어볼지, 떨어뜨릴지 알려 주고, 걸리는 문장은 콕 집어 줘요. 점수는 그대로예요.
화면의 프레임 시간이 매 프레임 들어오는 스트림에서, 언제 물어봐도 "최근 k개 프레임의 평균 시간"을 즉시 돌려주는 타입을 설계해 주세요. 매초 60번 호출되므로 계산이 가벼워야 합니다. 자료구조와 갱신 방식, 복잡도를 설명하세요.
크기 k의 원형 버퍼와 running sum을 유지한다. 새 값이 오면 덮어쓸 자리의 옛 값을 합에서 빼고 새 값을 더해 O(1)로 갱신, 평균은 합 ÷ 현재 개수. 메모리는 O(k)로 고정된다.
CS 기초·알고리즘객관식기초
거래 금액 배열에서 "합이 한도 L 이하인 가장 긴 연속 구간"을 두 포인터 슬라이딩 윈도우로 O(n)에 풀었습니다. 면접관이 "환불이 섞여서 음수 금액이…
#sliding-window
CS 기초·알고리즘객관식기초
거래 목록(카드번호, 국가, 시각)이 시각 오름차순으로 들어옵니다. "같은 카드가 5분 안에 서로 다른 두 나라에서 사용됨"을 탐지하는 가장 효율적인 접근은…
#stream
아키텍처주관식기초
RxSwift(또는 Combine)로 대표되는 반응형 프로그래밍이 iOS에서 어떤 문제를 풀어 주나요?
#stream