Engineering Questions with Answers - Multiple Choice Questions
Home » MCQs » Bachelor of Computer Applications » Data Structure MCQs – Double Ended Queue (Dequeue)
Data Structure MCQs – Double Ended Queue (Dequeue)
1 - Question
1. What is a dequeue? a) A queue with insert/delete defined for both front and rear ends of the queue b) A queue implemented with a doubly linked list c) A queue implemented with both singly and doubly linked lists d) A queue with insert/delete defined for front side of the queue
View Answer
2 - Question
2. Select the function which performs insertion at the front end of the dequeue? a) public void function(Object item) { Node temp = new Node(item,null); if(isEmpty()) { temp.setNext(trail); head.setNext(temp); } else { Node cur = head.getNext(); temp.setNext(cur); head.setNext(temp); } size++; } b) advertisement public void function(Object item) { Node temp = new Node(item,null); if(isEmpty()) { temp.setNext(trail); head.setNext(trail); } else { Node cur = head.getNext(); temp.setNext(cur); head.setNext(temp); } size++; } c) public void function(Object item) { Node temp = new Node(item,null); if(isEmpty()) { Node cur = head.getNext(); temp.setNext(cur); head.setNext(temp); } else { temp.setNext(trail); head.setNext(temp); } size++; } d) public void function(Object item) { Node temp = new Node(item,null); if(isEmpty()) { Node cur = head.getNext(); temp.setNext(cur); cur.setNext(temp); } else { head.setNext(trail); trail.setNext(temp); } size++; }
View Answer
3 - Question
3. What is the functionality of the following piece of code? public void function(Object item) { Node temp=new Node(item,trail); if(isEmpty()) { head.setNext(temp); temp.setNext(trail); } else { Node cur=head.getNext(); while(cur.getNext()!=trail) { cur=cur.getNext(); } cur.setNext(temp); } size++; } a) Insert at the front end of the dequeue b) Insert at the rear end of the dequeue c) Fetch the element at the rear end of the dequeue d) Fetch the element at the front end of the dequeue
View Answer
4 - Question
4. What are the applications of dequeue? a) A-Steal job scheduling algorithm b) Can be used as both stack and queue c) To find the maximum of all sub arrays of size k d) To avoid collision in hash tables
View Answer
5 - Question
5. Which of the following can be used to delete an element from the front end of the queue? a) public Object deleteFront() throws emptyDEQException { if(isEmpty()) throw new emptyDEQException("Empty"); else { Node temp = head.getNext(); Node cur = temp; Object e = temp.getEle(); head.setNext(cur); size--; return e; } } b) public Object deleteFront() throws emptyDEQException { if(isEmpty()) throw new emptyDEQException("Empty"); else { Node temp = head.getNext(); Node cur = temp.getNext(); Object e = temp.getEle(); head.setNext(cur); size--; return e; } } c) public Object deleteFront() throws emptyDEQException { if(isEmpty()) throw new emptyDEQException("Empty"); else { Node temp = head.getNext(); Node cur = temp.getNext(); Object e = temp.getEle(); head.setNext(temp); size--; return e; } } d) public Object deleteFront() throws emptyDEQException { if(isEmpty()) throw new emptyDEQException("Empty"); else { Node temp = head.getNext(); Node cur = temp.getNext(); Object e = temp.getEle(); temp.setNext(cur); size--; return e; } }
View Answer
6 - Question
6. Which of the following can be used to delete an element from the rear end of the queue? a) public Object deleteRear() throws emptyDEQException { if(isEmpty()) throw new emptyDEQException("Empty"); else { Node temp = head.getNext(); Node cur = temp; while(temp.getNext() != trail) { temp = temp.getNext(); cur = cur.getNext(); } Object e = temp.getEle(); cur.setNext(trail); size--; return e; } } b) public Object deleteRear() throws emptyDEQException { if(isEmpty()) throw new emptyDEQException("Empty"); else { Node temp = head.getNext(); Node cur = head; while(temp != trail) { temp = temp.getNext(); cur = cur.getNext(); } Object e = temp.getEle(); cur.setNext(trail); size--; return e; } } c) public Object deleteRear() throws emptyDEQException { if(isEmpty()) throw new emptyDEQException("Empty"); else { Node temp = head.getNext(); Node cur = head; while(temp.getNext()!=trail) { temp = temp.getNext(); cur = cur.getNext(); } Object e = temp.getEle(); cur.setNext(trail); size--; return e; } } d) public Object deleteRear() throws emptyDEQException { if(isEmpty()) throw new emptyDEQException("Empty"); else { Node temp = head.getNext(); Node cur = head; while(temp.getNext()!=trail) { temp = temp.getNext(); cur = cur.getNext(); } Object e = temp.getEle(); temp.setNext(trail); size--; return e; } }
View Answer
7 - Question
7. What is the time complexity of deleting from the rear end of the dequeue implemented with a singly linked list? a) O(nlogn) b) O(logn) c) O(n) d) O(n2)
View Answer
8 - Question
8. 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(); a) 10 30 10 15 b) 20 30 40 15 c) 20 30 40 10 d) 10 30 40 15