기주

[코테] 자료구조5 - HashMap, HashSet 사용하기 본문

알고리즘/코테

[코테] 자료구조5 - HashMap, HashSet 사용하기

기주그지마 2024. 10. 5. 21:08

 

 

HashMap

순서에 상관없이 key-value형태로 저장되는 자료구조.

 

삽입, 검색이 모두 O(1)의 시간복잡도를 가지는 특징이 있다.

 

 

HashMap<String, Integer> map = new HashMap<>();  //해시테이블 생성

map.put("Apple", 10); // "Apple" key에 10 추가 (추가, 수정 모두 가능)
map.put("Apple", 20); // "Apple" key의 value을 20으로 수정
map.put("Apple", 30); // "Apple" key의 value을 30으로 수정

map.remove("Apple"); // "Apple" key와 그에 해당하는 value을 제거

map.get("Banana"); // "Banana" key에 해당하는 value 검색

map.keySet() // key를 기반으로한 set반환

map.containsKey(key) //특정키가 존재하는 지 확인

map.size() // 맵 크기 반환

map.equals() // map과 map비교. 키값과 밸류가 모두 일치하면 true반환

map.getOrDefault(key, default) // key값이 있다면 value반환, 없다면 default반환

 

 

 

 

HashSet

HashSet<String> set = new HashSet<>();

set.add() // 데이터 추가

set.remove()  // 데이터 삭제

set.contains()  // 데이터 포함 여부 반환

String[] arr = set.toArray(new String[0])  // 특정 타입 배열로 반환, 기본적으로는 Object[]배열로 반환

순서와 중복없이 저장한다.