Program of Linked List
Program of Linked List
```
#include <iostream>
// Node structure
struct Node {
int data;
Node* next;
};
class CircularLinkedList {
public:
Node* head;
// Constructor
// Insert at beginning
newNode->data = data;
if (head == NULL) {
head = newNode;
newNode->next = head;
} else {
temp = temp->next;
temp->next = newNode;
newNode->next = head;
head = newNode;
// Insert at end
newNode->data = data;
if (head == NULL) {
head = newNode;
newNode->next = head;
} else {
temp = temp->next;
temp->next = newNode;
newNode->next = head;
}
// Delete at beginning
void deleteAtBeginning() {
if (head == NULL) {
delete head;
head = NULL;
} else {
temp = temp->next;
temp->next = newNode;
delete head;
head = newNode;
// Delete at end
void deleteAtEnd() {
if (head == NULL) {
head = NULL;
} else {
temp = temp->next;
delete temp->next;
temp->next = head;
// Print list
void printList() {
if (head == NULL) {
} else {
do {
temp = temp->next;
};
int main() {
CircularLinkedList cll;
cll.insertAtBeginning(1);
cll.insertAtBeginning(2);
cll.insertAtEnd(3);
cll.insertAtEnd(4);
cll.printList();
cll.deleteAtBeginning();
cll.deleteAtEnd();
cll.printList();
return 0;
```
Output:
```
After deletion: 1 3
```
This C++ program demonstrates the following operations on a circular linked
list:
You can modify and extend this code to suit your specific requirements.