a) Singly linked list
b) Doubly linked list
c) Circular doubly linked list
d) Array implementation of list
Answer: c
Explanation: We can easily concatenate two lists in O (1) time using singly or doubly linked list, provided that we have a pointer to the last node at least one of the lists. But in case of circular doubly linked lists, we will break the link in both the lists and hook them together. Thus circular doubly linked list concatenates two lists in O (1) time.
Related Posts
Given an array of size n, let’s assume an element is ‘touched’ if and only if some operation is performed on it(for example, for performing a pop operation the top element is ‘touched’). Now you need to perform Dequeue operation. Each element in the array is touched atleast?
Which of the following sorting algorithms can be used to sort a random linked list with minimum time complexity?
What does the following function do for a given Linked List with first node as head?
void fun1(struct node* head)
{
if(head == NULL)
return;
fun1(head->next);
printf(“%d “, head->data);
}Which of the following points is/are not true about Linked List data structure when it is compared with an array?
Linked list data structure offers considerable saving in _____________
In Linked List implementation, a node carries information regarding ___________
Linked list is considered as an example of ___________ type of memory allocation.
Join The Discussion