Doubly and Circular Linked List MCQs: 12 Solved Questions
Solve 12 published MCQs on circular, doubly and XOR linked lists. Each answer explains the invariant, pointer operation or complexity argument behind it.
KnowledgeGate Team
Exam prep & CS education

Doubly and circular linked-list questions look definitional, but their options often hide a pointer invariant, an access assumption or a cost that changes when a node address is already known. These 12 MCQs cover circular queues, pointer updates, XOR links, complexity, traversal and practical memory trade-offs.
Attempt each question before reading its explanation. The exam and year labels identify each PYQ's source. For a wider learning route around these structures, use the Coding & DSA category.
Related reading: stack and queue implementation MCQs and circular queues and deques.
1. Circular linked list MCQs: the loop invariant and its use
Q1. Circular linked list definition
CoCubes 2024
What is a circular linked list?
A. A linked list where all nodes are connected in a circular fashion, i.e., the last node points to the first node
B. A linked list where the first node points to the last node
C. A linked list where all nodes point to themselves
D. None of the above
Correct answer: A. In 10 -> 20 -> 30 -> 10, the last node's next is head 10, so traversal stops only when the cursor returns to its start. Option B reverses one relationship; option C creates three isolated self-loops.
Q2. A cyclic application
BPSC NB 2024
Which of the following application makes use of a circular linked list?
A. Recursive function calls
B. Allocating CPU to resources
C. Implement Hash Tables
D. More than one of the above
E. None of the above
Correct answer: B. In P1 -> P2 -> P3 -> P1, the scheduler continues from P3 to P1 without rebuilding the round-robin ready sequence. Recursive calls use a stack, and a standard hash table needs no circular list.
2. Circular queues and the rule that no live next link becomes NULL
Q3. One pointer for constant-time enqueue and dequeue
GATE 2004
A circularly linked list is used to represent a Queue. A single variable p is used to access the Queue. To which node should p point such that both the operations enQueue and deQueue can be performed in constant time?

A. rear node
B. front node
C. not possible with a single pointer
D. node next to front
Correct answer: A. Let p point to rear 30 in 10 -> 20 -> 30 -> 10, so p->next is front 10. Enqueue 40 with 40.next=10, 30.next=40, p=40; dequeue 10 with p->next=20. Both use fixed pointer updates, so both are O(1).
Q4. Deleting the last node
Beltron Programmer Shift-2 2025
In a circular linked list, among the nodes that remain in the list, which node's next pointer is set to NULL during deletion of the last node?
A. Head node
B. None of the nodes
C. Last node
D. Node before last node
Correct answer: B. None of any node. In 4 -> 7 -> 9 -> 4, deleting 9 makes 7.next=4, not NULL. Deleting the one-node list 4 -> 4 empties the external head; it leaves no live node with a NULL next.
The linked-list queue in Q3 tests where one pointer must sit. The earlier Stacks and Queues MCQs set owns broader queue operations, deque concepts and stack-based expression problems.
3. Doubly linked list MCQs: node layout, traversal and implementation cost
Q5. Fields in each node
TPSC Assistant Programmer 2025
In a doubly linked list, each node contains :
A. Data and a pointer to the next node only
B. Data and a pointer to the previous node only
C. Data, a pointer to the next node, and a pointer to the previous node
D. Only data
Correct answer: C. In 10 <-> 20 <-> 30, the middle node stores 20, prev to 10, and next to 30. Both links enable forward and backward traversal; one link alone does not describe the standard doubly linked node.
Q6. The false implementation claim
BPSC PGT Tier-1 2023
Which of the following statements is not true about the doubly linked list?
A. We can traverse in both the directions.
B. It requires extra space.
C. Implementation of doubly linked list is easier than the singly linked list.
D. More than one of the above
E. None of the above
Correct answer: C. Options A and B follow from storing both prev and next. Inserting 20 between 10 and 30 means keeping four directional links consistent, so implementation is not generally easier. The gain is bidirectional navigation and predecessor access.
Use the broader Data Structures MCQs hub for mixed-topic practice.
4. Deletion and insertion MCQs: count the links, not the lines of code
Q7. Deleting a node whose location is known
ISRO 2008
Which of the following operations is performed more efficiently by doubly linked list than by linear linked list?
A. Deleting a node whose location is given
B. Searching an unsorted list for a given item
C. Inserting a node after the node with a given location
D. Traversing the list to process each node
Correct answer: A. Given 20 in 10 <-> 20 <-> 30, set 10.next=30 and 30.prev=10, an O(1) deletion. A singly linked list must find the unsupplied predecessor; searching, traversal and insertion after a known node stay O(n), O(n) and O(1) in both structures.
Q8. Pointer fields affected by insertion
ISRO May 2017
In a doubly linked list, the number of pointers affected for an insertion operation will be
A. 5
B. 0
C. 1
D. None of these
Correct answer: D. None of these. Interior insertion uses 20.prev=10, 20.next=30, 10.next=20, and 30.prev=20. Four pointer fields change, but 4 is absent; an endpoint may instead use a sentinel or boundary case.
5. Circular doubly and XOR linked-list variants
Q9. Concatenating two lists in O(1)
RSSB 2018
The concatenation of two lists is to be performed in O(1) time. Which of the following implementations of lists could be used?
A. Singly linked list
B. Doubly linked list
C. Circular doubly linked list
D. Array implementation of list
Correct answer: C. For A=(1,2) and B=(3,4), maintain each tail so its head is tail.next. Set 2.next=3, 3.prev=2, 4.next=1, 1.prev=4; these four assignments form 1 <-> 2 <-> 3 <-> 4 <-> 1 without scanning.
Q10. One stored XOR link
UGC NET 2023
Assertion A: It is possible to create doubly linked list using only one pointer with every node
Reason R: By storing the XOR of the addresses of the previous and next nodes
In the light of the above statements, choose the most appropriate answer
A. Both A and R are true and R is the correct explanation of A
B. Both A and R are true but R is not the correct explanation of A
C. A is true but R is false
D. A is false but R is true
Correct answer: A. With previous address 1000 and next address 1300, store 1000 XOR 1300 = 1788; then 1788 XOR 1000 = 1300, so R explains A. This low-level address technique is unsuitable in many managed or portability-sensitive environments, but that does not change the answer.
6. Complexity and space MCQs: state the supplied access model first
Q11. Total cost over a sorted doubly linked list
GATE 2016 Set 2
items are stored in a sorted doubly linked list. For a operation, a pointer is provided to the record to be deleted. For a operation, a pointer is provided to the record on which the operation is to be performed. An algorithm performs the following operations on the list in this order: , , , and . What is the time complexity of all these operations put together?
A.
B.
C.
D.
Correct answer: C. Deletes total Θ(N) x O(1) = Θ(N); insert and find batches contribute at most O(N log N). The Θ(N) decrease-key operations can each scan Θ(N) positions, giving the dominant Θ(N^2) term; at N=8, that scales as 8 x 8 = 64 position checks.
For a structured route through the wider GATE CS syllabus, see GATE Guidance by Sanchit Sir.
Q12. The extra pointer costs memory
TPSC Programmer 2025
Which of the following is true for a doubly linked list compared to a singly linked list?
A. It uses more memory due to the additional pointer stored in each node.
B. It reduces the time complexity of every operation compared to a singly linked list.
C. It does not allow traversal in both directions.
D. It is faster to search for an element.
Correct answer: A. Singly linked nodes store data plus next; doubly linked nodes also store prev, so three nodes add three pointer fields. Search remains linear without an index, not every operation is faster, and the extra link enables backward traversal.
7. Doubly and circular linked-list traps, recall sheet and next step
Trap | Check | Questions |
|---|---|---|
last.next is NULL in a circular list | last.next must return to head | Q1, Q4 |
one queue pointer should store front | store rear so rear.next is front | Q3 |
known node means predecessor is still unknown in a singly list | read the supplied-access assumption | Q7 |
count statements instead of pointer fields | write all four assignments | Q8, Q9 |
add complexity labels instead of multiplying operation count by per-operation cost | expand each batch and keep the dominant term | Q11 |
90-second recall drill: redraw 10 -> 20 -> 30 -> 10. With rear pointer p, enqueue 40 using 40.next=10, 30.next=40, p=40, then dequeue 10 using p->next=20. Insert 20 between 10 and 30 with Q8's four assignments. Recover 1300 from 1788 XOR 1000; explain why 8 decrease-key operations with up to 8 checks each give the quadratic term, 64.
Re-attempt only the questions you missed after one week, writing the invariant or cost equation before selecting an option. When you are ready to turn the pointer rules into code, DSA using Java is the structured implementation-oriented route.
Keep learning

Stack Basics and Operations MCQs: 12 Solved Questions with Step-by-Step Explanations
Test stack fundamentals through 12 exam MCQs on LIFO, TOP, array bounds, queue transfers and permutations. Complete traces make every state and answer checkable.

Evaluation of Expressions MCQs: 12 Solved Questions with Stack Traces
Solve 12 expression MCQs step by step. Trace postfix and prefix evaluation, nesting depth, precedence and notation conversion without reversing operands.

Priority Queue MCQs: 12 Solved Questions on Heaps, Deques and Variants
Attempt 12 verified priority queue and queue-variant MCQs, then learn from concise heap, array, circular queue and deque traces.

Infix, Postfix and Prefix MCQs: 12 Solved Questions with Step-by-Step Explanations
Solve 12 expression-notation MCQs in increasing difficulty, from basic stack use to conversions, associativity and maximum operand-stack depth.