#include <iostream>
using namespace std;
struct Node
{
int data;
Node *prev;
Node *next;
};
int main()
{
Node *head, *temp;
// Creating nodes
Node *n1 = new Node{10, NULL, NULL};
Node *n2 = new Node{20, NULL, NULL};
Node *n3 = new Node{30, NULL, NULL};
Node *n4 = new Node{40, NULL, NULL};
head = n1;
n1->next = n2;
n2->prev = n1;
n2->next = n3;
n3->prev = n2;
n3->next = n4;
n4->prev = n3;
// Move to last node
temp = head;
while (temp->next != NULL)
{
temp = temp->next;
}
// Display in reverse order
cout << "Reverse List: ";
while (temp != NULL)
{
cout << temp->data << " ";
temp = temp->prev;
}
return 0;
}




