리스트(List)

추상 자료형 : Abstract Data Type

ADT라고도 불리는 추상 자료형은 ‘구체적인 기능의 완성과정을 언급하지 않고, 순수하게 기능이 무엇인지를 나열한 것’이다. 자료구조는 추상 자료형이 정의한 연산들을 구현한 구현체를 가리킨다.

쉽게 구분하자면 클래스인지 인터페이스인지를 확인하면 되는 것이다. 스택이나 큐와 같이 구현 방법이 정의되어 있지 않으면 ADT이고, 배열이나 연결 리스트처럼 저장 방식이 정해져 있다면 자료구조이다.

배열을 이용한 리스트의 구현

리스트의 이해

리스트라는 자료구조는 구현방법에 따라서 크게 두 가지로 나눌 수 있다.

  • 순차 리스트 배열을 기반으로 구현된 리스트
  • 연결 리스트 메모리의 동적 할당을 기반으로 구현된 리스트

리스트 자료구조는 데이터를 나란히 저장한다. 그리고 중복된 데이터의 저장을 허용한다.