Page 17 -
P. 17
1장은 배열과 집합이라는 두 가지 자료 구조를 분석한다. 언뜻 보면 거의 동일해 보이지만, 앞으
로 소개할 도구를 통해 성능에 미치는 영향이 어떻게 다른지 분석해 보이겠다.
1.2 배열: 기초 자료 구조 DATA STRUCTURES AND ALGORITHMS
배열은 컴퓨터 과학에서 기초적인 자료 구조 중 하나다. 이미 배열을 다뤄봤을 테니 배열이 단순
히 데이터 원소들의 리스트임을 알 것이다. 배열은 다양한 용도로 여러 가지 상황에서 유용한 도
구로 쓰이지만, 여기서는 간단한 예제 하나만 다뤄보자.
마트에서 살 쇼핑 목록을 만들고 사용할 수 있는 애플리케이션의 소스 코드를 보는 중이라면 다음
과 같은 코드가 나올 수 있다.
array = ["apples", "bananas", "cucumbers", "dates", "elderberries"]
배열에 들어 있는 다섯 가지 문자열은 마트에서 살 법한 식료품들이다(elderberries로 테스트해
보자). 1
배열에만 쓰이는 기술 용어를 알아보자.
배열의 크기는 배열에 데이터 원소가 얼마나 들어있는지 알려준다. 식료품 리스트 배열은 값이 5개
이니 크기가 5다.
배열의 인덱스는 특정 데이터가 배열의 어디에 있는지 알려주는 숫자다.
대부분의 프로그래밍 언어에서 인덱스는 0부터 시작한다. 예제의 배열도 마찬가지로 다음 그림처
럼 "apples"는 인덱스 0, "elderberries"는 인덱스 4에 있다.
그림 1-1
ੋؙझ ੋؙझ ੋؙझ ੋؙझ ੋؙझ
1 역주 물론, 엘더베리가 한국에서 살 법한 식료품은 아니다.
030