Advertisement
Guest User

Untitled

a guest
Dec 6th, 2016
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.85 KB | None | 0 0
  1.  void remove(const key_type &key) {
  2.             int index = bucketHash(key);
  3.  
  4.             for (int i = 0; i < sizes[index]; ++i){
  5.  
  6.                 if (key == (*(buckets+index)+i)->val->first){
  7.  
  8.                     if (i != 0){
  9.                         BucketNode *temp = (*(buckets+index)+i);
  10.                         BucketNode *prev = temp->prev;
  11.  
  12.                         prev->next = temp->next;
  13.                         delete temp;
  14.                     }
  15.                     else {
  16.                         BucketNode *temp = (*(buckets+index)+i);
  17.                         (*(buckets+index)) = temp->next;
  18.                         (*(buckets+index))->prev = nullptr;
  19.  
  20.                         delete temp;
  21.                     }
  22.  
  23.                     --sizes[index];
  24.                 }
  25.  
  26.             }
  27.  
  28.             throw std::out_of_range("");
  29.         }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement