자료구조 - MAP(맵)

컴퓨터/알고리즘&자료구조

728x90
반응형

Key와 Value로 이루어진 자료구조

순자적으로 메모리에 데이터를 저장하는 배열과 리스트와는 달리 Key와 Value로 구성되어 있는 개념의 자료 구조에 대하여 알아보도록 하겠습니다.

  • Key(키)와 Value(값)이 쌍으로 이루어진 자료구조

그림처럼 키와 값이 하나의 쌍으로 연결되어 있어 키를 통해 값에 접근을 할 수 있도록 만들어진 자료 구조입니다.

흔히 key와 value가 메칭 되는것을 맵핑(mapping)한다고 일컫습니다.

  • Key의 중복을 허용하지 않아야 된다.

Key는 Map 자료구조에서 대응하는 값을 찾기 위한 요소로 중복을 허용하면 안 됩니다. 만약 중복이 된다면 접근하는데 문제가 생길 수 있기 때문입니다.

Map 자료구조는 왜 사용하는가?

List형태의 자료구조들은 순서대로 값을 차곡차곡 집어넣는 일련의 하나의 줄과 같은 형태입니다. 반면 Map 형태의 자료구조는 각각의 Key와 매칭 되는 Value들이 존재합니다. 즉 순서보다는 정의된 이름(Key)과 상응하는 데이터들을 묶기 위한 자료 구조로서 효과적입니다.

 

Map 자료구조의 대표적인 종류

Map의 개념을 이용하여 사용하는 대표적인 자료구조는 크게 3가지 정도가 있습니다.

각 자료구조와 특징은 다음과 같습니다.

  • HashMap
    • key와 value의 쌍으로만 구성이 될뿐 자료구조 안에 묶인 쌍들에 대한 순서는 보장할 수 없다.
    • 즉, 사용자는 키와 값이 구성되는 위치를 결정 하거나 알 수 없다. 
  • TreeMap
    • key의 값을 이용해 순서대로 정렬하여 데이터를 저장하는 자료구조
    • key값을 통한 탐색 뿐 아니라 key값의 정렬을 통한 탐색 등을 하기에 용의 하다.
  • LinkedHashMap
    • 데이터를 입력한 순서대로 쌓아지며 데이터를 저장하는 자료구조
    • 배열, 리스트처럼 인덱싱 접근을 하기에 용의 하다.
728x90
반응형

Commnet

G91개발일지

Gon91(지구일)

91년생 공학엔지니어의 개발일지

TODAY :

YESTER DAY :

TOTAL :