Looking for feedback on this code to reverse a double linked list. Things I am potentially looking for but missed -> redundant operations, extra / unnecessary arithmetic, improvement in code style. Thank yoU!
typedef struct Node {
int data;
struct Node* next;
struct Node* prev;
} Node;
void reverse(Node** head) {
Node* curr = *head;
Node* prev_ptr = NULL;
Node* next_ptr = NULL;
while (curr != NULL) {
prev_ptr = curr->prev;
next_ptr = curr->next;
curr->prev = next_ptr;
curr->next = prev_ptr;
(*head) = curr;
curr = next_ptr;
}
}