HashMap

HashMap vs TreeMap vs LinkedHashMap

HashMap 내부 구조:

버킷: 배열 형태로 데이터 저장, 기본 크기 16 해시 함수: key.hashCode()를 사용해 버킷 인덱스 계산 충돌 해결: 체이닝 방식 (같은 버킷에 연결 리스트로 저장)

Java 8 개선사항: 연결 리스트가 8개 이상 쌓이면 Red-Black Tree로 변환

검색 성능이 O(n)에서 O(log n)으로 개선 6개 이하로 줄어들면 다시 연결 리스트로 변환