public class Node {
int data;
Node next;
public Node(int data) {
[Link] = data;
[Link] = null;
}
}
public class QueueUsingLinkedList {
private Node front;
private Node rear;
public boolean isEmpty() {
return front == null;
}
public void enqueue(int item) {
Node newNode = new Node(item);
if (isEmpty()) {
front = newNode;
rear = newNode;
} else {
[Link] = newNode;
rear = newNode;
}
}
public void dequeue() {
if (isEmpty()) {
[Link]("Queue is empty. Cannot dequeue.");
} else {
[Link]("Dequeued element: " + [Link]);
front = [Link];
}
}
public void display() {
if (isEmpty()) {
[Link]("Queue is empty.");
} else {
Node current = front;
[Link]("Queue: ");
while (current != null) {
[Link]([Link] + " ");
current = [Link];
}
[Link]();
}
}
public static void main(String[] args) {
QueueUsingLinkedList queue = new QueueUsingLinkedList();
[Link](10);
[Link](20);
[Link](30);
[Link]();
[Link]();
[Link]();
[Link]();
}
}