자료구조 선택 기준

자료구조 연산 비용

데이터가 많아지면 같은 값이라도 정리 방식에 따라 탐색과 수정 시간이 달라집니다. 그래서 배열부터 해싱까지 장단점을 비교해야 합니다.

탐색원하는 데이터를 얼마나 빨리 찾는가
삽입중간에 새 데이터를 넣기 쉬운가
삭제지운 뒤 구조를 다시 맞추는 비용은 어떤가
Array번호 접근이 빠름

인덱스로 바로 찾지만 중간 삽입과 삭제는 밀어내기가 필요합니다.

List연결을 바꾸기 쉬움

삽입과 삭제는 유리하지만 특정 위치까지 순서대로 가야 합니다.

Stack마지막 것부터 처리

되돌리기, 함수 호출, 괄호 검사처럼 LIFO 흐름에 맞습니다.

Tree계층과 정렬 탐색

부모-자식 관계와 빠른 검색을 표현할 때 씁니다.

Hash키로 빠르게 찾기

평균 검색은 빠르지만 충돌 처리를 함께 이해해야 합니다.

구조 선택은 상황 의존

읽기가 많은지, 수정이 많은지에 따라 정답이 달라집니다.

시간복잡도는 성장률

입력 크기 n이 커질 때 작업량이 어떻게 늘어나는지를 봅니다.

배열은 기본 기준점

연속 메모리와 인덱스 접근을 이해해야 다른 구조도 비교할 수 있습니다.