카테고리 없음

Map(맵) 이란 ?

Jr.고래 2024. 6. 10. 09:32

 

Map이란 키와 값을 쌍으로 저장하는 자료구조이다. 

 

- 특징

   키는 중복될수 없다. (키가 중복될 경우 덮어쓰여짐)

     ex) map.put("자바","좋아") -> map.put("자바","싫어") 로 똑같은 키값으로 자료를 저장했을 시 map.get("자바) : "싫어"가 최종값

  기본적으로 순서를 유지하지 않는다. 

 

 

1.  HashMap 

가장 기본적인 Map의 구현체 

해시테이블을 사용하여 성능이 좋다 ( 대부분의 get 및 put 연산이 상수 시간(평균 O(1))에 수행 )

 

2. TreeMap

키를 정렬된 순서로 저장함(기본값 오름차순)

레드-블랙 트리를 사용하여 대부분의 get, put 연산이 로그 시간(O(log n))에 수행됨

 

3. LinkedHashMap

HashMap을 상속하며, 키의 순서를 유지하는 기능이 추가되었다

입력된 순서대로 또는 접근된 순서대로 순서를 유지할 수 있습니다.

 

4. ConcurrentHashMap

스레드 안전한 Map 구현체입니다.

동기화 없이 여러 스레드에서 동시에 접근할 수 있습니다.

 

기본적으로 알고리즘을 풀면서 봤거나 스프링을 공부하며 들은 Map 구현체들이다.