평균 가정 표시
Map/Set 연산의 O(1)은 균등한 해시 분포와 적절한 resize가 있을 때의 평균입니다.
average해시는 평균적으로 빠르지만, 키 분포가 나쁘거나 의도적인 충돌 입력이 들어오면 성능과 보안이 동시에 흔들립니다. 알고리즘 문제에서는 평균 복잡도와 최악 복잡도를 구분하고, 실무에서는 해시 함수와 salt, load factor까지 봅니다.
Map/Set 연산의 O(1)은 균등한 해시 분포와 적절한 resize가 있을 때의 평균입니다.
average체이닝, 오픈 어드레싱, 트리 버킷 등 충돌 처리 방식에 따라 최악 비용이 달라집니다.
collision외부 사용자가 키를 고를 수 있으면 hash flooding으로 서버 CPU를 소모시킬 수 있습니다.
adversarial해시가 불안정하거나 순서가 필요하면 balanced tree, sort 후 two pointer 같은 대안을 검토합니다.
alternative