Hashtable 09 erase Fn

my erase Fn i not working

correct code :-

void erase(string key){
    int idx = hashFunc(key);
    Node<T>* temp = table[idx];
    Node<T>* prev = NULL;

    while(temp != NULL){
        if(temp->key == key){
            if(prev){
                prev->next = temp->next;
            }
            else{
                table[idx] = temp->next;
            }
            temp->next = NULL;
            delete temp;
            return ;
        }
        prev = temp;
        temp = temp->next;
    }
}
1 Like