타임스탬프, 계정, 금액이 포함된 로그에서 계정별(계정은 문자열)로 그룹화된 거래 금액을 합산해야 합니다. 어떤 데이터 구조가 계정별 집계에 가장 효율적일까요?
정답 선택
옵션을 탭하여 정답을 확인하세요.
정답: 해시 테이블.
이것이 정답인 이유
해시 테이블은 키-값 쌍을 저장하는 데 최적화된 데이터 구조입니다. 이 시나리오에서는 계정(문자열)을 키로 사용하고 해당 계정의 총 거래 금액을 값으로 사용하여, 각 계정의 거래 금액을 효율적으로 집계할 수 있습니다. 새로운 거래가 발생하면 해당 계정 키를 사용하여 해시 테이블에서 기존 금액을 빠르게 찾아 업데이트할 수 있습니다. 연결 리스트는 순차적 접근에 효율적이지만, 특정 계정을 찾기 위해 전체 리스트를 탐색해야 하므로 집계에는 비효율적입니다. 2차원 배열은 인덱스를 통한 접근은 빠르지만, 계정 이름을 직접 인덱스로 사용할 수 없으며, 계정 수가 가변적일 때 관리하기 어렵습니다. 쉼표로 구분된 문자열은 구조화된 데이터 저장이 아니므로, 데이터를 파싱하고 집계하는 데 많은 오버헤드가 발생합니다.
끝없는 정답 찾기 없이 시험 합격
이 시험에 대한 모든 검증된 문제와 설명을 한곳에서 얻고, 준비 시간을 몇 시간 절약하세요. 1,000개 이상의 자격증 · 20개 이상의 언어 · 무료로 시작.
더 빠르게 시험 합격 → 카드 필요 없음