Linked List in C++

A linked list in C++ is a linear data structure storing elements in separate objects called nodes. Each node contains two parts: data and a pointer(reference) to the next node in the sequence. This structure allows for the Linked List’s dynamic memory allocation, insertion, and deletion operations.

Linked List Program in C++

Here’s an example of a linked list program in C++ along with an explanation:

#include <iostream>
using namespace std;

class Node {
    int data;
    Node* next;

    Node(int data) {
        this->data = data;
        next = nullptr;

class LinkedList {
    Node* head;

    LinkedList() {
        head = nullptr;

    // Method to insert a new node at the end of the linked list
    void append(int data) {
        Node* newNode = new Node(data);
        if (head == nullptr) {
            head = newNode;
        Node* last = head;
        while (last->next != nullptr) {
            last = last->next;
        last->next = newNode;

    // Method to display the linked list elements
    void display() {
        Node* current = head;
        while (current != nullptr) {
            cout << current->data << " ";
            current = current->next;
        cout << endl;

int main() {
    LinkedList list;

    cout << "Linked List elements:" << endl;

    return 0;

Explanation: LinkedList Program

  • The Node class represents each node in the linked list. It has a data field and a pointer to the next node.
  • The LinkedList class manages the linked list operations. It has a head pointer to the first node in the list.
  • The append method adds a new node with the given data at the end of the linked list.
  • The display method prints all the elements of the linked list.
  • In the main function, we create a linked list object, add elements to it using the append method, and then display the elements using the display method.