본문 바로가기
알고리즘 문제풀이 입문: 코딩테스트 대비/섹션 4. HashMap, TreeSet (해쉬, 정렬지원 Set)

Hash 개념

by _비니_ 2024. 4. 2.
Hash 란
Key : Value 의 형태를 가진 자료구조


전화번호부와 같다고 생각하면 쉬움. 
찾고자 하는 이름 = Key
전화번호 = Value

Hash는 모든 데이터타입으로 접근 가능하다.


HashMap<Key의 데이터형, Value의 데이터형> map = new HashMap<>();
map.put('A', 3);  => map의 A번째 인덱스에 3이라고 입력하는 것과 같은 동작이라고 생각하면 됨.
map.get("A") => key의 value 읽어오기 (A라는 key가 존재한다는 가정하에 동작. 없으면 에러)
map.getOrDefault("A",false) => A라는 Key가 있다면 A의 Value를 반환, 없다면 false를 반환

어떤 문제에서 Hash를 써야할까??

=> String을 기반으로 정보를 기록하고 관리해야될 때!
(단순 배열을 쓸 수 없으니 Hash를 활용하자)
반응형