fork download
#include <iostream>
using namespace std;
struct node {
    int data;
    node *next;
};

class LinkedList {
private:
    node *head;
public:
    LinkedList() {
        head = NULL;
    }

    bool isempty() {
        return (head == NULL);
    }

    void insertitem(int newvalue) {
        node *newnode = new node;
        newnode->data = newvalue;
        newnode->next = NULL;
        if (isempty()) {
            head = newnode;
        } else {
            newnode->next = head;
            head = newnode;
        }
    }

    void display() {
        if (isempty()) {
            cout << "The list is empty." << endl;
            return;
        }
        node *traver = head;
        while (traver != NULL) {
            cout << traver->data << " ";
            traver = traver->next;
        }
        cout << endl;
    }

    void deletitem(int item) {
        if (isempty()) {
            cout << "List is empty, no items to delete." << endl;
            return;
        }

        node *delptr = head;
        node *prev = NULL;

        if (head->data == item) {
            head = head->next;
            delete delptr;
            cout << "Item " << item << " deleted successfully." << endl;
            return;
        }

        while (delptr != NULL && delptr->data != item) {
            prev = delptr;
            delptr = delptr->next;
        }

        if (delptr != NULL) {
            prev->next = delptr->next;
            delete delptr;
            cout << "Item " << item << " deleted successfully." << endl;
        } else {
            cout << "Item " << item << " not found in the list." << endl;
        }
    }

    bool search(int num) {
        node *temp = head;
        while (temp != NULL) {
            if (temp->data == num) {
                cout << "true\n";
                return true;
            }
            temp = temp->next;
        }
        cout << "false\n";
        return false;
    }

    int count() {
        int counter = 0;
        node *temp = head;
        while (temp != NULL) {
            counter++;
            temp = temp->next;
        }
        cout << "the length of linked list = " << counter << endl;
        return counter;
    }

    void insertEnd(int newvalue) {
        node *newnode = new node;
        newnode->data = newvalue;
        newnode->next = NULL;

        if (head == NULL) {
            head = newnode;
        } else {
            node *temp = head;
            while (temp->next != NULL) {
                temp = temp->next;
            }
            temp->next = newnode;
        }
    }
};


int main() {
	// your code goes here
	return 0;
}
Success #stdin #stdout 0.01s 5268KB
stdin
Standard input is empty
stdout
Standard output is empty