sliver__

[Mastering C++ Programming] - unordered_multiset 본문

CS/C++

[Mastering C++ Programming] - unordered_multiset

sliver__ 2022. 12. 5. 22:42
728x90
  • unordered_multiset은 컨테이너의 내부 동작이 다르다는 점을 제외하면 multiset과 유사한 방식으로 작동합니다. 
  • multiset은 레드-블랙 트리를 사용하고 unordered_multiset은 해시 테이블을 사용합니다. 
  • multiset 연산의 시간 복잡도는 O(log N)인 반면 unordered_multiset 연산의 시간 복잡도는 O(1)입니다. 
  • 따라서 unordered_multiset은 multiset보다 빠른 경향이 있습니다.
  • unordered_multiset에 저장된 값은 값이 정렬된 방식으로 저장되는 multiset과 달리 특정 방식으로 구성되지 않습니다. 
  • 성능이 기준이라면 unordered_multiset이 좋은 선택입니다. 
  • 그러나 정렬된 방식으로 값을 반복하는 것이 요구 사항인 경우 multiset이 좋은 선택입니다.

https://en.cppreference.com/w/cpp/container/unordered_multiset

 

std::unordered_multiset - cppreference.com

(1) (since C++11) namespace pmr {     template ,               class Pred = std::equal_to >     using unordered_multiset = std::unordered_multiset >; } (2) (since C++17) Unordered multiset is an associative container that contains set of possibl

en.cppreference.com

 

728x90
Comments