Question
public class CircularQueue
{
protected static final int CAPACITY = 100;
protected int size,front,rear;
protected Object q[];
int count = 0;
public CircularQueue()
{
this(CAPACITY);
}
public CircularQueue (int n)
{
size = n;
front = 0;
rear = 0;
q = new Object[size];
}
public void enqueue(Object item)
{
if(count == size)
{
System.out.println("Queue overflow");
return;
}
else
{
q[rear] = item;
rear = (rear+1)%size;
count++;
}
}
public Object dequeue()
{
if(count == 0)
{
System.out.println("Queue underflow");
return 0;
}
else
{
Object ele = q[front];
q[front] = null;
front = (front+1)%size;
count--;
return ele;
}
}
public Object frontElement()
{
if(count == 0)
return -999;
else
{
Object high;
high = q[front];
return high;
}
}
public Object rearElement()
{
if(count == 0)
return -999;
else
{
Object low;
rear = (rear-1)%size;
low = q[rear];
rear = (rear+1)%size;
return low;
}
}
}
public class CircularQueueDemo
{
public static void main(String args[])
{
Object var;
CircularQueue myQ = new CircularQueue();
myQ.enqueue(10);
myQ.enqueue(3);
var = myQ.rearElement();
myQ.dequeue();
myQ.enqueue(6);
var = mQ.frontElement();
System.out.println(var+" "+var);
}
}
a.
3 3
b.
3 6
c.
6 6
d.
10 6
Posted under Data Structures and Algorithms
Engage with the Community - Add Your Comment
Confused About the Answer? Ask for Details Here.
Know the Explanation? Add it Here.
Q. What is the output of the following piece of code?
Similar Questions
Discover Related MCQs
Q. In linked list implementation of queue, if only front pointer is maintained, which of the following operation take worst case linear time?
View solution
Q. In linked list implementation of a queue, where does a new element be inserted?
View solution
Q. In linked list implementation of a queue, front and rear pointers are tracked. Which of these pointers will change during an insertion into a NONEMPTY queue?
View solution
Q. In linked list implementation of a queue, front and rear pointers are tracked. Which of these pointers will change during an insertion into EMPTY queue?
View solution
Q. In case of insertion into a linked queue, a node borrowed from the __________ list is inserted in the queue.
View solution
Q. In linked list implementation of a queue, from where is the item deleted?
View solution
Q. In linked list implementation of a queue, the important condition for a queue to be empty is?
View solution
Q. The essential condition which is checked before insertion in a linked queue is?
View solution
Q. The essential condition which is checked before deletion in a linked queue is?
View solution
Q. With what data structure can a priority queue be implemented?
View solution
Q. Which of the following is not an application of priority queue?
View solution
Q. What is the time complexity to insert a node based on key in a priority queue?
View solution
Q. What is not a disadvantage of priority scheduling in operating systems?
View solution
Q. What are the advantages of priority queues?
View solution
Q. What is the time complexity to insert a node based on position in a priority queue?
View solution
Q. What is a dequeue?
View solution
Q. What are the applications of dequeue?
View solution
Q. What is the time complexity of deleting from the rear end of the dequeue implemented with a singly linked list?
View solution
Q. After performing these set of operations, what does the final list look contain?
InsertFront(10);
InsertFront(20);
InsertRear(30);
DeleteFront();
InsertRear(40);
InsertRear(10);
DeleteRear();
InsertRear(15);
display();
View solution
Q. To implement a stack using queue(with only enqueue and dequeue operations), how many queues will you need?
View solution
Suggested Topics
Are you eager to expand your knowledge beyond Data Structures and Algorithms? We've curated a selection of related categories that you might find intriguing.
Click on the categories below to discover a wealth of MCQs and enrich your understanding of Computer Science. Happy exploring!