Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- explicit hash_map(size_type n) : allocator(), m_data(allocator.allocate(n)), vec(n, 0), m_size(n){}
- mapped_type& operator[](const key_type& k) {
- //const size_type h = m_hash(k); //считаем хэш
- const size_type index = m_hash(k) % vec.size(); //Ищем индекс
- if (vec[index]) { //Если создана
- return m_data[index].second;
- }
- new(m_data + index) value_type{ k, mapped_type{} };//Иначе создаем
- vec[index] = 1;
- return m_data[index].second;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement