Question 05 of 05

Doubly Linked List

Write a program to create and display a doubly linked list.

C++
#include <iostream>
using namespace std;

struct Node { int data; Node* next; Node* prev; };

void append(Node*& head, int val) {
    Node* newNode = new Node();
    newNode->data = val;
    newNode->next = NULL;
    if (head == NULL) { newNode->prev = NULL; head = newNode; return; }
    Node* temp = head;
    while (temp->next != NULL) temp = temp->next;
    temp->next = newNode;
    newNode->prev = temp;
}

void display(Node* head) {
    while (head != NULL) { cout << head->data << " <-> "; head = head->next; }
    cout << "NULL\n";
}

int main() {
    Node* head = NULL;
    append(head, 10); append(head, 20); append(head, 30);
    display(head);
    return 0;
}
Question 5 of 5