Queue in Java
A queue is a linear dynamic data structure that follows First-In/First-Out (FIFO) principle. In a queue, addition of a new element and deletion of an element occurs at different end which implies that the element which is added first in the queue will be the first to be removed from the queue.
Features of queue
- It is a dynamic data structure.
- It has dynamic size.
- It uses dynamic memory allocation.
Operations of a queue
- isEmpty(): Checks whether the queue is empty or not.
- size(): Returns the size of the queue.
- frontElement(): Returns the front element of the queue. It is the element which will be dequeued next.
- rearElement(): Returns the rear element of the queue. It is the element behind which next element will be enqueued.
- EnQueue(x): Adds a new element ‘x’ from the rear side of the queue. Consequently, size of the queue increases by 1.
- DeQueue(): Deletes the front element of the queue. Consequently, size of the queue decreases by 1.
Implementation of queue
class CreateQueue { static final int MAX = 100; int front; int rear; //assigning MAX size of the queue int queue[] = new int[MAX]; CreateQueue() { front = -1; rear = -1; } // create a method to check whether // the queue is empty or not void isEmpty() { if(rear == front) { System.out.println("Queue is empty."); } else { System.out.println("Queue is not empty."); } } //create a method to return size of the queue int size() { return (rear - front); } //create a method to add new element void EnQueue(int x){ if(rear == (MAX - 1)){ System.out.println("Queue size limit reached."); } else { queue[++rear] = x; System.out.println(x + " is added into the queue."); } } //create a method to delete front element void DeQueue(){ if(rear == front){ System.out.println("Queue is empty."); } else { int x = queue[++front]; System.out.println(x + " is deleted from the queue."); } } //create a method to get front element int frontElement() { if(rear == front) { System.out.println("Queue is empty."); return 0; } else { return queue[front+1]; } } //create a method to get rear element int rearElement() { if(rear == front) { System.out.println("Queue is empty."); return 0; } else { return queue[rear]; } } } // test the code public class MyClass { public static void main(String[] args) { CreateQueue MyQueue = new CreateQueue(); MyQueue.EnQueue(10); MyQueue.EnQueue(20); MyQueue.EnQueue(30); MyQueue.EnQueue(40); MyQueue.DeQueue(); MyQueue.isEmpty(); } }
The above code will give the following output:
10 is added into the queue. 20 is added into the queue. 30 is added into the queue. 40 is added into the queue. 10 is deleted from the queue. Queue is not empty.
Recommended Pages
- Java Program - To Check Prime Number
- Java Program - Bubble Sort
- Java Program - Selection Sort
- Java Program - Maximum Subarray Sum
- Java Program - Reverse digits of a given Integer
- Java - Swap two numbers
- Java Program - Fibonacci Sequence
- Java Program - Insertion Sort
- Java Program - Find Factorial of a Number
- Java Program - Find HCF of Two Numbers
- Java Program - To Check Whether a Number is Palindrome or Not
- Java Program - To Check Whether a String is Palindrome or Not
- Java Program - Heap Sort
- Java Program - Quick Sort
- Java - Swap Two Numbers without using Temporary Variable
- Java Program - To Check Armstrong Number
- Java Program - Counting Sort
- Java Program - Radix Sort
- Java Program - Find Largest Number among Three Numbers
- Java Program - Print Floyd's Triangle