알고리즘 기본 개념 정리

cf) HASH란?

임의의 크기를 가진 데이터를 고정된 데이터의 크기로 변환시키는 것
-> 특정한 배열의 인덱스나 위치를 입력하고자 하는 데이터의 값을 이용해 저장하거나 찾을 수 있음

cf) HashMap이란?

Key와 value를 묶어 하나의 entry로 저장하는 Map이다.
hashing을 사용하기 때문에 많은양의 데이터를 검색하는데 뛰어난 성능을 보여준다.

  • map의 인터페이스중 하나로 (“Key”, “Value”)로 이루어져 있다.
  • key 값은 중복이 불가능 / value는 중복이 가능
  • 멀티쓰레드에서 동시에 HashMap을 건드려 Key-value값을 사용하면 문제가 생긴다 -> 충돌

HashMap 생성자/메서드

생성자/메서드 설명
HashMap() HashMap 객체를 생성
void clear() HashMap에 저장된 모든 요소를 제거한다.
Object clone() 현재 HashMap을 복제하여 반환한다.
boolean containsKey(Object key) HashMap에 지정된 키(key)가 포함되어 있는지 알려준다.
boolean containsValue(Object value) HashMap에 지정된 값(Value)이 포함되어 있는지 알려준다.
Set entrySet() HashMap에 저장된 Key-Value값을 엔트리(키와 값을 결함)의 형태로 Set에 저장하여 반환
Object get(Object Key) 지정된 키의 값을 반환한다.
boolean isEmpty() HashMap이 비어있는지 확인한다.
Set keySet() HashMap에 저장된 모든 키가 저장된 Set을 반환한다.
Object put(Object key, Object Value) HashMap에 키와 값을 저장
void putAll(Map m) Map에 해당하는 모든 요소를 HashMap에 저장한다.
Object remove(Object key) HashMap에서 지정된 키로 지정된 값을 제거한다.
int size() HashMap에 저장된 요소의 개수를 반환한다.