Advertisement
Guest User

Untitled

a guest
Nov 13th, 2019
124
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.50 KB | None | 0 0
  1. explicit hash_map(size_type n) : allocator(), m_data(allocator.allocate(n)), vec(n, 0), m_size(n){}
  2.  
  3. mapped_type& operator[](const key_type& k) {
  4. //const size_type h = m_hash(k); //считаем хэш
  5. const size_type index = m_hash(k) % vec.size(); //Ищем индекс
  6. if (vec[index]) { //Если создана
  7. return m_data[index].second;
  8. }
  9. new(m_data + index) value_type{ k, mapped_type{} };//Иначе создаем
  10. vec[index] = 1;
  11. return m_data[index].second;
  12. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement