std::unordered_set - Serbipunk/notes GitHub Wiki

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

template<
    class Key,
    class Hash = std::hash<Key>,
    class KeyEqual = std::equal_to<Key>,
    class Allocator = std::allocator<Key>
> class unordered_set;

unordered_set是一个联合容器,保存一堆唯一Key类型的容器。查找,插入和删除操作的时间复杂度是平均的且很低。

内部原理,插入的元素没有以任何顺序存储,而是存入了桶中,后面链接着哈希算法。 快速访问元素是可行的,因为可以计算出哈希值,由此得到对应的桶。

不能修改元素,因为修改元素会破坏哈希值。

⚠️ **GitHub.com Fallback** ⚠️