maneedhar
12/10/2018 - 3:46 AM

Reverse LL (function)

//Using Iteration
void reverse(){
    node* current, *next, *prev;
    current = head;
    prev = NULL;
    while(current != NULL){
        next = current->next;
        current->next = prev;
        prev = current;
        current = next;
    }
    head = prev;
}

// using Recursion
// void reverse(node* temp){
    //     if (temp->next == NULL){
    //         head = temp;
    //         return;
    //     }
    //     reverse (temp->next);
    //     node* temp1 = temp->next;
    //     temp1->next = temp;
    //     temp->next = NULL;
    // }