node* reverseLinkedList (node* head) {
// empty list
if (head == NULL || head -> next == NULL) {
return head;
}
node* prev = NULL;
node* curr = head;
node* forword = NULL;
while (curr != NULL) {
forword = curr -> next;
curr -> next = prev;
prev = curr;
curr = forword;
}
return prev;
}