What is the worst-case time complexity of inserting an element into a singly linked list at the head position?
Answer and explanation
Correct answer: A. O(1)
- Step 1: Trace head insertion in a linked list: create a new node, set `new_node.next = head`, then update `head = new_node`.
- Step 2: The operation requires updating two pointer references without traversing any other nodes in the list, executing in constant time .
Answer
O(1).
Why not the others: is required to insert at the tail without a tail pointer or at an arbitrary index; applies to trees.
Practise more Algorithms and Python Programming.
Free questions with an explanation for every one, and full timed EmSAT Achieve (UAE) mock tests.
More Algorithms and Python Programming questions
- What is the output of the following Python expression: [x**2 for x in range(6) if x % 2 != 0]?
- What is the worst-case time complexity of searching for an element in a balanced binary search tree (AVL tree) containing n nodes?
- What will be printed by the following Python code snippet?
def func(val, lst=[]):
lst.append(val)
return lst
print(func(1))
print(… - Which abstract data structure operates on a First-In, First-Out (FIFO) ordering principle?
- What is the return value of executing the recursive Python function `mystery(4)`?
def mystery(n):
if n <= 1:
return 1
retur… - What is the worst-case time complexity of the standard QuickSort algorithm when the chosen pivot is consistently the smallest or largest ele…