더북(TheBook)

2.5 | list<T> 컨테이너 사용하기

 

list 헤더에 정의된 list<T> 컨테이너 템플릿은 타입 T 객체의 이중 연결 리스트를 구현한 것이다. listvectordeque 컨테이너와 비교하면 순차열의 어느 위치라도 상수 시간에 원소 삽입과 삭제를 할 수 있다는 장점이 있다. 이 장점 때문에 vectordeque대신 list 컨테이너를 사용하려는 주된 동기가 된다. 하지만 순차열에서 특정 위치에 있는 원소에 바로 접근할 수 없다는 단점도 있다. 즉, 원소들에 인덱스를 사용할 수 없다. list 내부에 있는 원소에 접근하려면 한 원소에서 옆 원소로 하나씩 이동하며, 즉 처음부터 마지막 원소까지 원소들을 순회해야 한다. 그림 2-6을 보면 list 컨테이너가 원소들을 어떻게 저장하는지 알 수 있다.

▲ 그림 2-6 list<T> 컨테이너

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.