Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void resizeTable(HashMap* map, int capacity)
- {
- printf("resize triggered\n");
- HashLink** doubled = malloc(sizeof(HashLink*) * capacity);
- HashLink** temp = map->table;
- map->table = doubled;
- if(map->size > 0) { //No need to iterate if there are no elems
- printf("rehashing triggered\n");
- for (int i = 0; i < map->capacity; i++) { //Iterate through old maps members
- struct HashLink *iterator = temp[i];
- if (iterator != NULL) { //Current bucket has elems
- while(iterator != 0){
- hashMapPut(map, iterator->key, iterator->value); //Put elems into new hashMap
- iterator = iterator->next;
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement