공부/기타

맵(Map)과 해쉬맵(HashMap)의 차이

셩잇님 2023. 6. 12. 23:36
반응형

 

 

1. 맵과 해시 맵의 차이

일반적으로 '맵'과 '해시맵'은 모두 키-값 쌍을 저장하는 데 사용되는 데이터 구조이지만, '맵'과 '해시맵'이라는 구체적인 용어는 프로그래밍 언어나 문맥에 따라 다른 의미를 가질 수 있습니다.


[Map]
맵은 키-값 쌍의 컬렉션을 나타내는 추상 데이터 유형으로, 맵 내에서 각 키는 고유합니다.
맵은 해당 키를 기반으로 값을 효율적으로 조회하고 검색할 수 있습니다.
맵은 일반적으로 키-값 쌍을 삽입, 검색, 제거하는 작업은 물론 키가 있는지 확인하고 맵의 항목을 반복하는 작업을 제공합니다.


[Hash Map]
해시맵은 해시 테이블을 기반으로 하는 맵 데이터 구조의 특정 구현입니다.
해시 테이블은 해시 함수를 사용하여 키를 기본 배열의 인덱스에 매핑하므로 키-값 쌍을 효율적으로 조회 및 검색할 수 있습니다.
해시맵은 삽입, 검색, 제거와 같은 기본 작업에 대해 상수 시간 평균 케이스 성능을 제공합니다.
그러나 해시맵의 항목 순서는 보장되지 않으며 특정 구현이나 기타 요인에 따라 달라질 수 있습니다.
해시맵은 일반적으로 항목의 순서가 중요하지 않고 빠른 조회 및 검색이 필요할 때 사용됩니다.

Java와 같은 일부 프로그래밍 언어에서 "해시맵"은 해시 테이블 기반 맵의 내장 클래스 또는 라이브러리 구현을 구체적으로 지칭합니다. 다른 언어에서는 해시 테이블 기반 맵의 이름이나 구현이 다를 수 있습니다. 특정 프로그래밍 언어에서 이러한 용어를 사용할 때는 특정 문서나 언어 규칙을 참조하는 것이 중요합니다.

 

2. 결론
요약하자면, '맵'은 키-값 쌍의 집합을 나타내는 일반적인 개념이며, '해시맵'은 효율적인 키-값 쌍 검색을 위해 해시 테이블을 사용하는 맵의 특정 구현을 의미합니다.

 

 

 

반응형