

MCQOPTIONS
This section includes 721 Mcqs, each offering curated multiple-choice questions to sharpen your Technical Programming knowledge and support exam preparation. Choose a topic below to get started.
601. |
In case of insertion into a linked queue, a node borrowed from the __________ list is inserted in the queue. |
A. | AVAIL |
B. | FRONT |
C. | REAR |
D. | None of the mentioned |
Answer» B. FRONT | |
602. |
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? |
A. | Only front pointer |
B. | Only rear pointer |
C. | Both front and rear pointer |
D. | None of the mentioned |
Answer» D. None of the mentioned | |
603. |
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? |
A. | Only front pointer |
B. | Only rear pointer |
C. | Both front and rear pointer |
D. | None of the mentioned |
Answer» C. Both front and rear pointer | |
604. |
In linked list implementation of a queue, where does a new element be inserted? |
A. | At the head of link list |
B. | At the centre position in the link list |
C. | At the tail of the link list |
D. | None of the mentioned |
Answer» D. None of the mentioned | |
605. |
In linked list implementation of queue, if only front pointer is maintained, which of the following operation take worst case linear time? |
A. | Insertion |
B. | Deletion |
C. | To empty a queue |
D. | Both Insertion and To empty a queue |
Answer» E. | |
606. |
What is the output of the following piece of code? 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 |
Answer» B. 3 6 | |
607. |
What is the space complexity of a linear queue having n elements? |
A. | O(n) |
B. | O(nlogn) |
C. | O(logn) |
D. | O(1) |
Answer» B. O(nlogn) | |
608. |
What is the need for a circular queue? |
A. | effective usage of memory |
B. | easier computations |
C. | all of the mentioned |
D. | none of the mentioned |
Answer» B. easier computations | |
609. |
What does the following piece of code do? public Object function() { if(isEmpty()) return -999; else { Object high; high = q[front]; return high; } } |
A. | Dequeue |
B. | Enqueue |
C. | Return the front element |
D. | None of the mentioned |
Answer» D. None of the mentioned | |
610. |
What is the time complexity of enqueue operation? |
A. | O(logn) |
B. | O(nlogn) |
C. | O(n) |
D. | O(1) |
Answer» E. | |
611. |
What is the term for inserting into a full queue known as? |
A. | overflow |
B. | underflow |
C. | null pointer exception |
D. | all of the mentioned |
Answer» B. underflow | |
612. |
In a circular queue, how do you increment the rear end of the queue? |
A. | rear++ |
B. | (rear+1) % CAPACITY |
C. | (rear % CAPACITY)+1 |
D. | rear– |
Answer» C. (rear % CAPACITY)+1 | |
613. |
Which of the following properties is associated with a queue? |
A. | First In Last Out |
B. | First In First Out |
C. | Last In First Out |
D. | None of the mentioned |
Answer» C. Last In First Out | |
614. |
Minimum number of queues to implement stack is __________ |
A. | 3 |
B. | 4 |
C. | 1 |
D. | 2 |
Answer» D. 2 | |
615. |
Which of the following data structures can be used for parentheses matching? |
A. | n-ary tree |
B. | queue |
C. | priority queue |
D. | stack |
Answer» E. | |
616. |
Consider these functions: push(20); push(4); top(); pop(); pop(); pop(); push(5); top(); |
A. | 20 |
B. | 4 |
C. | stack underflow |
D. | 5 |
Answer» E. | |
617. |
What does ‘stack overflow’ refer to? |
A. | accessing item from an undefined stack |
B. | adding items to a full stack |
C. | removing items from an empty stack |
D. | index out of bounds exception |
Answer» C. removing items from an empty stack | |
618. |
Which of the following statements are correct with respect to Singly Linked List(SLL) and Doubly Linked List(DLL)? |
A. | Complexity of Insertion and Deletion at known position is O(n) in SLL and O(1) in DLL |
B. | SLL uses lesser memory per node than DLL |
C. | DLL has more searching power than SLL |
D. | All of the mentioned |
Answer» E. | |
619. |
What is the complexity of searching for a particular element in a Singly Linked List? |
A. | O(n) |
B. | O(1) |
C. | logn |
D. | nlogn |
Answer» B. O(1) | |
620. |
Which of the following array element will return the top-of-the-stack-element for a stack of size N elements(capacity of stack > N). |
A. | S[N-1]. |
B. | S[N]. |
C. | S[N-2]. |
D. | S[N+1]. |
Answer» B. S[N]. | |
621. |
Array implementation of Stack is not dynamic’, which of the following statements supports this argument? |
A. | space allocation for array is fixed and cannot be changed during run-time |
B. | user unable to give the input for stack operations |
C. | a runtime exception halts execution |
D. | all of the mentioned |
Answer» B. user unable to give the input for stack operations | |
622. |
What happens when you pop from an empty stack while implementing using the Stack ADT in Java? |
A. | Undefined error |
B. | Compiler displays a warning |
C. | EmptyStackException is thrown |
D. | NoStackException is thrown |
Answer» D. NoStackException is thrown | |
623. |
Which of the following array position will be occupied by a new element being pushed for a stack of size N elements(capacity of stack > N). |
A. | S[N-1]. |
B. | S[N]. |
C. | S[1]. |
D. | S[0]. |
Answer» C. S[1]. | |
624. |
What is the time complexity of pop() operation when the stack is implemented using an array? |
A. | O(1) |
B. | O(n) |
C. | O(logn) |
D. | O(nlogn) |
Answer» B. O(n) | |
625. |
What is the output of the following program? public class Stack { protected static final int CAPACITY = 100; protected int size,top = -1; protected Object stk[]; public Stack() { stk = new Object[CAPACITY]; } public void push(Object item) { if(size_of_stack==size) { System.out.println("Stack overflow"); return; } else { top++; stk[top]=item; } } public Object pop() { if(top<0) { return -999; } else { Object ele=stk[top]; top--; size_of_stack--; return ele; } } } public class StackDemo { public static void main(String args[]) { Stack myStack = new Stack(); myStack.push(10); Object element1 = myStack.pop(); Object element2 = myStack.pop(); System.out.println(element2); } } |
A. | stack is full |
B. | 20 |
C. | 0 |
D. | none of the mentioned |
Answer» E. | |
626. |
What does ‘stack underflow’ refer to? |
A. | accessing item from an undefined stack |
B. | adding items to a full stack |
C. | removing items from an empty stack |
D. | index out of bounds exception |
Answer» D. index out of bounds exception | |
627. |
What does the following function check for? (all necessary headers to be included and function is called from main) #define MAX 10 typedef struct stack { int top; int item[MAX]; }stack; int function(stack *s) { if(s->top == -1) return 1; else return 0; } |
A. | full stack |
B. | invalid index |
C. | empty stack |
D. | infinite stack |
Answer» D. infinite stack | |
628. |
Which of the following real world scenarios would you associate with a stack data structure? |
A. | piling up of chairs one above the other |
B. | people standing in a line to be serviced at a counter |
C. | offer services based on the priority of the customer |
D. | all of the mentioned |
Answer» B. people standing in a line to be serviced at a counter | |
629. |
Consider a small circular linked list. How to detect the presence of cycles in this list effectively? |
A. | Keep one node as head and traverse another temp node till the end to check if its ‘next points to head |
B. | Have fast and slow pointers with the fast pointer advancing two nodes at a time and slow pointer advancing by one node at a time |
C. | Cannot determine, you have to pre-define if the list contains cycles |
D. | None of the mentioned |
Answer» C. Cannot determine, you have to pre-define if the list contains cycles | |
630. |
Which of the following is false about a circular linked list? |
A. | Every node has a successor |
B. | Time complexity of inserting a new node at the head of the list is O(1) |
C. | Time complexity for deleting the last node is O(n) |
D. | None of the mentioned |
Answer» C. Time complexity for deleting the last node is O(n) | |
631. |
What is the functionality of the following code? Choose the most appropriate answer. public int function() { if(head == null) return Integer.MIN_VALUE; int var; Node temp = head; Node cur; while(temp.getNext() != head) { cur = temp; temp = temp.getNext(); } if(temp == head) { var = head.getItem(); head = null; return var; } var = temp.getItem(); cur.setNext(head); return var; } |
A. | Return data from the end of the list |
B. | Returns the data and deletes the node at the end of the list |
C. | Returns the data from the beginning of the list |
D. | Returns the data and deletes the node from the beginning of the list |
Answer» C. Returns the data from the beginning of the list | |
632. |
Which of the following application makes use of a circular linked list? |
A. | Undo operation in a text editor |
B. | Recursive function calls |
C. | Allocating CPU to resources |
D. | All of the mentioned |
Answer» D. All of the mentioned | |
633. |
What is the time complexity of searching for an element in a circular linked list? |
A. | O(n) |
B. | O(nlogn) |
C. | O(1) |
D. | None of the mentioned |
Answer» B. O(nlogn) | |
634. |
What differentiates a circular linked list from a normal linked list? |
A. | You cannot have the ‘next’ pointer point to null in a circular linked list |
B. | It is faster to traverse the circular linked list |
C. | You may or may not have the ‘next’ pointer point to null in a circular linked list |
D. | All of the mentioned |
Answer» D. All of the mentioned | |
635. |
Consider the following doubly linked list: head-1-2-3-4-5-tail Node temp = new Node(6,head,head.getNext()); head.setNext(temp); temp.getNext().setPrev(temp); Node temp1 = tail.getPrev(); tail.setPrev(temp1.getPrev()); temp1.getPrev().setNext(tail); |
A. | head-6-1-2-3-4-5-tail |
B. | head-6-1-2-3-4-tail |
C. | head-1-2-3-4-5-6-tail |
D. | head-1-2-3-4-5-tail |
Answer» C. head-1-2-3-4-5-6-tail | |
636. |
What is the functionality of the following piece of code? public int function() { Node temp = tail.getPrev(); tail.setPrev(temp.getPrev()); temp.getPrev().setNext(tail); size--; return temp.getItem(); } |
A. | Return the element at the tail of the list but do not remove it |
B. | Return the element at the tail of the list and remove it from the list |
C. | Return the last but one element from the list but do not remove it |
D. | Return the last but one element at the tail of the list and remove it from the list |
Answer» C. Return the last but one element from the list but do not remove it | |
637. |
Consider the following doubly linked list: head-1-2-3-4-5-tail Node temp = new Node(6,head,head.getNext()); Node temp1 = new Node(0,tail.getPrev(),tail); head.setNext(temp); temp.getNext().setPrev(temp); tail.setPrev(temp1); temp1.getPrev().setNext(temp1); |
A. | head-0-1-2-3-4-5-6-tail |
B. | head-1-2-3-4-5-6-tail |
C. | head-6-1-2-3-4-5-0-tail |
D. | head-0-1-2-3-4-5-tail |
Answer» D. head-0-1-2-3-4-5-tail | |
638. |
What is the time complexity of inserting a node in a doubly linked list? |
A. | O(nlogn) |
B. | O(logn) |
C. | O(n) |
D. | O(1) |
Answer» D. O(1) | |
639. |
How do you calculate the pointer difference in a memory efficient double linked list? |
A. | head xor tail |
B. | pointer to previous node xor pointer to next node |
C. | pointer to previous node – pointer to next node |
D. | pointer to next node – pointer to previous node |
Answer» C. pointer to previous node – pointer to next node | |
640. |
What is a memory efficient double linked list? |
A. | Each node has only one pointer to traverse the list back and forth |
B. | The list has breakpoints for faster traversal |
C. | An auxiliary singly linked list acts as a helper list to traverse through the doubly linked list |
D. | None of the mentioned |
Answer» B. The list has breakpoints for faster traversal | |
641. |
Which of the following is false about a doubly linked list? |
A. | We can navigate in both the directions |
B. | It requires more space than a singly linked list |
C. | The insertion and deletion of a node take a bit longer |
D. | None of the mentioned |
Answer» E. | |
642. |
Which of these is an application of linked lists? |
A. | To implement file systems |
B. | For separate chaining in hash-tables |
C. | To implement non-binary trees |
D. | All of the mentioned |
Answer» E. | |
643. |
What is the space complexity for deleting a linked list? |
A. | O(1) |
B. | O(n) |
C. | Either O(1) or O(n) |
D. | O(logn) |
Answer» B. O(n) | |
644. |
What is the time complexity to count the number of elements in the linked list? |
A. | O(1) |
B. | O(n) |
C. | O(logn) |
D. | None of the mentioned |
Answer» C. O(logn) | |
645. |
What is the time complexity of inserting at the end in dynamic arrays? |
A. | O(1) |
B. | O(n) |
C. | O(logn) |
D. | Either O(1) or O(n) |
Answer» E. | |
646. |
Which of the following is not a disadvantage to the usage of array? |
A. | Fixed size |
B. | You know the size of the array prior to allocation |
C. | Insertion based on position |
D. | Accessing elements at specified positions |
Answer» E. | |
647. |
You are given pointers to first and last nodes of a singly linked list, which of the following operations are dependent on the length of the linked list? |
A. | Delete the first element |
B. | Insert a new element as a first element |
C. | Delete the last element of the list |
D. | Add a new element at the end of the list |
Answer» D. Add a new element at the end of the list | |
648. |
Given pointer to a node X in a singly linked list. Only one pointer is given, pointer to head node is not given, can we delete the node X from given linked list? |
A. | Possible if X is not last node |
B. | Possible if size of linked list is even |
C. | Possible if size of linked list is odd |
D. | Possible if X is not first node |
Answer» B. Possible if size of linked list is even | |
649. |
In the worst case, the number of comparisons needed to search a singly linked list of length n for a given element is |
A. | log 2 n |
B. | n⁄2 |
C. | log 2 n – 1 |
D. | n |
Answer» E. | |
650. |
The following C function takes a single-linked list of integers as a parameter and rearranges the elements of the list. struct node { int value; struct node *next; }; void rearrange(struct node *list) { struct node *p, * q; int temp; if ((!list) || !list->next) return; p = list; q = list->next; while(q) { temp = p->value; p->value = q->value; q->value = temp; p = q->next; q = p?p->next:0; } } |
A. | 1, 2, 3, 4, 5, 6, 7 |
B. | 2, 1, 4, 3, 6, 5, 7 |
C. | 1, 3, 2, 5, 4, 7, 6 |
D. | 2, 3, 4, 5, 6, 7, 1 |
Answer» C. 1, 3, 2, 5, 4, 7, 6 | |