200
97.9k

550+ Data Structures (DS) Solved MCQs

These multiple-choice questions (MCQs) are designed to enhance your knowledge and understanding in the following areas: Computer Science Engineering (CSE) , Information Technology Engineering (IT) , Bachelor of Science in Computer Science FY (BSc CS) , Bachelor of Science in Information Technology FY (BSc IT) , Bachelor of Computer Applications (BCA) .

Chapters

More MCQs
301.

A linear list in which each node has pointers to point to the predecessor and successors nodes is called as

A. singly linked list
B. circular linked list
C. doubly linked list
D. linear linked list
Answer» C. doubly linked list
302.

The situation when in a linked list START=NULL is

A. underflow
B. overflow
C. housefull
D. saturated
Answer» A. underflow
303.

In doubly linked lists, traversal can be performed?

A. only in forward direction
B. only in reverse direction
C. in both directions
D. none of the above
Answer» C. in both directions
304.

How do you count the number of elements in the circular linked list?

A. public int length(node head) { int length = 0; if( head == null) return 0; node temp = head.getnext(); while(temp != head) { temp = temp.getnext(); length++; } return length; }
B. public int length(node head) { int length = 0; if( head == null) return 0; node temp = head.getnext(); while(temp != null) { temp = temp.getnext(); length++; } return length; }
C. public int length(node head) { int length = 0; if( head == null) return 0; node temp = head.getnext(); while(temp != head && temp != null) { temp = head.getnext(); length++; } return length; }
D. public int length(node head) { int length = 0; if( head == null) return 0; node temp = head.getnext(); while(temp != head && temp == null) { temp = head.getnext(); length++; } return length; }
Answer» A. public int length(node head) { int length = 0; if( head == null) return 0; node temp = head.getnext(); while(temp != head) { temp = temp.getnext(); length++; } return length; }
305.

public int function()
{
if(head == null)
return Integer.MIN_VALUE;
int var;
Node temp = head;
while(temp.getNext() != head)
temp = temp.getNext();
if(temp == head)
{
var = head.getItem();
head = null;
return var;
}
temp.setNext(head.getNext());
var = head.getItem();
head = head.getNext();
return var;
} What is the functionality of the following code? Choose the most appropriate answer.

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» D. returns the data and deletes the node from the beginning of the list
306.

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» B. returns the data and deletes the node at the end of the list
307.

How do you insert a node at the beginning of the list?

A. public class insertfront(int data) { node node = new node(data, head, head.getnext()); node.getnext().setprev(node); head.setnext(node); size++; }
B. public class insertfront(int data) { node node = new node(data, head, head); node.getnext().setprev(node); head.setnext(node); size++; }
C. public class insertfront(int data) { node node = new node(data, head, head.getnext()); node.getnext().setprev(head); head.setnext(node); size++; }
D. public class insertfront(int data) { node node = new node(data, head, head.getnext()); node.getnext().setprev(node); head.setnext(node.getnext()); size++; }
Answer» A. public class insertfront(int data) { node node = new node(data, head, head.getnext()); node.getnext().setprev(node); head.setnext(node); size++; }
308.

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
Answer» A. a queue with insert/delete defined for both front and rear ends of the queue
309.

Suppose a circular queue of capacity (n – 1) elements is implemented with an array of n elements. Assume that the insertion and deletion operation are carried out using REAR and FRONT as array index variables, respectively. Initially, REAR = FRONT = 0. The conditions to detect queue full and queue empty are

A. full: (rear+1) mod n == front, empty: rear == front
B. full: (rear+1) mod n == front, empty: (front+1) mod n == rear
C. full: rear == front, empty: (rear+1) mod n == front
D. full: (front+1) mod n == rear, empty: rear == front
Answer» A. full: (rear+1) mod n == front, empty: rear == front
310.

Suppose implementation supports an instruction REVERSE, which reverses the order of elements on the stack, in addition to the PUSH and POP instructions. Which one of the following statements is TRUE with respect to this modified stack?

A. a queue cannot be implemented using this stack.
B. a queue can be implemented where enqueue takes a single instruction and dequeue takes a sequence of two instructions.
C. a queue can be implemented where enqueue takes a sequence of three instructions and dequeue takes a single instruction.
D. a queue can be implemented where both enqueue and dequeue take a single instruction each.
Answer» C. a queue can be implemented where enqueue takes a sequence of three instructions and dequeue takes a single instruction.
311.

Suppose you are given an implementation of a queue of integers. The operations that can be performed on the queue are:
i. isEmpty (Q) — returns true if the queue is empty, false otherwise.
ii. delete (Q) — deletes the element at the front of the queue and returns its value.
iii. insert (Q, i) — inserts the integer i at the rear of the queue.
Consider the following function:
void f (queue Q) {
int i ;
if (!isEmpty(Q)) {
i = delete(Q);
f(Q);
insert(Q, i);
}
}What operation is performed by the above function f ?

A. leaves the queue q unchanged
B. reverses the order of the elements in the queue q
C. deletes the element at the front of the queue q and inserts it at the rear keeping the other elements in the same order
D. empties the queue q
Answer» B. reverses the order of the elements in the queue q
312.

Consider the following statements:i. First-in-first out types of computations are efficiently supported by STACKS.
ii. Implementing LISTS on linked lists is more efficient than implementing LISTS on
an array for almost all the basic LIST operations.
iii. Implementing QUEUES on a circular array is more efficient than implementing QUEUES
on a linear array with two indices.
iv. Last-in-first-out type of computations are efficiently supported by QUEUES.Which of the following is correct?

A. (ii) and (iii) are true
B. (i) and (ii) are true
C. (iii) and (iv) are true
D. (ii) and (iv) are true
Answer» A. (ii) and (iii) are true
313.

Which of the following option is not correct?

A. if the queue is implemented with a linked list, keeping track of a front pointer, only rear pointer s will change during an insertion into an non-empty queue.
B. queue data structure can be used to implement least recently used (lru) page fault algorithm and quick short algorithm.
C. queue data structure can be used to implement quick short algorithm but not least recently used (lru) page fault algorithm.
D. both (a) and (c)
Answer» C. queue data structure can be used to implement quick short algorithm but not least recently used (lru) page fault algorithm.
314.

Consider a standard Circular Queue 'q' implementation (which has the same condition for Queue Full and Queue Empty) whose size is 11 and the elements of the queue are q[0], q[1], q[2].....,q[10]. The front and rear pointers are initialized to point at q[2] . In which position will the ninth element be added?

A. q[0]
B. q[1]
C. q[9]
D. q[10]
Answer» A. q[0]
315.

Overflow condition in linked list may occur when attempting to .............

A. create a node when free space pool is empty
B. traverse the nodes when free space pool is empty
C. create a node when linked list is empty
D. none of these
Answer» A. create a node when free space pool is empty
316.

Which of the following is not a type of Linked List ?

A. doubly linked list
B. singly linked list
C. circular linked list
D. hybrid linked list
Answer» D. hybrid linked list
317.

Linked list is generally considered as an example of _________ type of memory allocation.

A. static
B. dynamic
C. compile time
D. none of these
Answer» B. dynamic
318.

Each Node contain minimum two fields one field called data field to store data. Another field is of type _________.

A. pointer to class
B. pointer to an integer
C. pointer to character
D. pointer to node
Answer» D. pointer to node
319.

If in a linked list address of first node is 1020 then what will be the address of node at 5th position ?

A. 1036
B. 1028
C. 1038
D. none of these
Answer» D. none of these
320.

In Circular Linked List insertion of a node involves the modification of ____ links.

A. 3
B. 4
C. 1
D. 2
Answer» D. 2
321.

If a list contains no elements it is said to be

A. hollow
B. empty
C. finite
D. infinite
Answer» B. empty
322.

Linked list uses

A. random memory allocation
B. static memory allocation
C. fixed memory allocation
D. dynamic memory allocation
Answer» D. dynamic memory allocation
323.

Standard approach for implementation of a list is/are of

A. 1 type
B. 2 type
C. 3 type
D. 4 type
Answer» B. 2 type
324.

First link node of list is accessed from a pointer named

A. tail
B. head
C. terminator
D. initiator
Answer» B. head
325.

A linked list is made up of a set of objects known as

A. nodes
B. arrays
C. entities
D. instances
Answer» A. nodes
326.

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» B. pointer to previous node xor pointer to next node
327.

A ……………….. is a linear list in which insertions and deletions are made to from either end of the structure.

A. circular queue
B. random of queue
C. priority
D. dequeue
Answer» D. dequeue
328.

Which of the following name does not relate to stacks?

A. fifo lists
B. lifo list
C. piles
D. push-down lists
Answer» A. fifo lists
329.

A data structure where elements can be added or removed at either end but not in the middle is called …

A. arrays
B. stacks
C. queues
D. deque
Answer» D. deque
330.

The postfix form of the expression (A + B)∗(C∗D − E)∗F / G is

A. ab + cd∗e − fg /∗∗
B. / ab + cd ∗ e − f ∗∗g /
C. ab + cd ∗ e − ∗f ∗ g /
D. ab + cde ∗ − ∗ f ∗ g /
Answer» A. ab + cd∗e − fg /∗∗
331.

What is the postfix form of the following prefix expression -A/B*C$DE ?

A. abcde$*/-
B. a-bcde$*/-
C. abc$ed*/-
D. a-bcde$*/
Answer» A. abcde$*/-
332.

The data structure required to evaluate a postfix expression is

A. queue
B. stacks
C. array
D. linked-list
Answer» B. stacks
333.

What is the postfix form of the following prefix: *+ab–cd

A. ab+cd–*
B. abc+*–
C. ab+*cd–
D. ab+*cd–
Answer» A. ab+cd–*
334.

A queue is a,

A. fifo (first in first out) list
B. lifo (last in first out) list
C. ordered array
D. linear tree
Answer» A. fifo (first in first out) list
335.

In stack terminology, the __________operations are known as push and pop operations respectively.

A. delete
B. insert
C. both (a) and (b)
D. none of the above
Answer» C. both (a) and (b)
336.

A common example of a queue is people waiting in line at a__________.

A. bus stop
B. movie hall
C. shopping mall
D. none of the above
Answer» A. bus stop
337.

What is one of the common examples of a stack?

A. a pile of books
B. bus stop
C. a basket of fruits
D. a carat of eggs
Answer» A. a pile of books
338.

When a stack is organized as an array, a variable named Top is used to point to the top element of the stack. Initially, the value of Top is set to_______to indicate an empty stack.

A. -1
B. 0
C. 1
D. x
Answer» A. -1
339.

What happens when the stack is full and there is no space for a new element, and an attempt is made to push a new element?

A. overflow
B. underflow
C. top
D. none of the above
Answer» A. overflow
340.

The total number of elements in a stack at a given point of time can be calculated from the value of______.

A. overflow
B. top
C. queues
D. underflow
Answer» B. top
341.

When the push operation is performed on stack the value of TOS will be ______

A. decrement
B. increment
C. one
D. none of these
Answer» B. increment
342.

A double linked list contains reference to _____

A. previous node
B. next node
C. current node
D. both a & b
Answer» D. both a & b
343.

Data Structure that are created by user as per their requirement are known as

A. primitive data structure
B. non-primitive data structure
C. both a & b
D. none of these
Answer» A. primitive data structure
344.

To insert element at start, the previous pointer of newly added node would point to ______

A. null
B. next node
C. new node
D. head node
Answer» A. null
345.

In linked list implementation, a node carries information regarding

A. the data
B. the link
C. both a & b
D. none of these
Answer» C. both a & b
346.

Which of the following data structure is linear type?

A. strings
B. stack
C. queue
D. all of these
Answer» D. all of these
347.

Stack is ____ type of data structure.

A. lifo
B. fifo
C. both a & b
D. none of these
Answer» A. lifo
348.

In stack deletion operation is referred as _____

A. push
B. pop
C. peek
D. none of these
Answer» B. pop
349.

Queue is _____ type of data structure.

A. lifo
B. fifo
C. both a & b
D. none of these
Answer» B. fifo
350.

Data structre is divided into _____ parts.

A. 4
B. 3
C. 2
D. 1
Answer» C. 2

Done Studing? Take A Test.

Great job completing your study session! Now it's time to put your knowledge to the test. Challenge yourself, see how much you've learned, and identify areas for improvement. Don’t worry, this is all part of the journey to mastery. Ready for the next step? Take a quiz to solidify what you've just studied.