Linked List Interview Questions | Practice Problems


A linked list is a linear data structure consisting of a group of nodes where each node point to the next node by means of a pointer. Each node is composed of data and a reference (in other words, a link) to the next node in the sequence.

  Linked List Interview Questions

Linked lists are among the simplest and most common data structures. The principal benefits of a linked list over a conventional array are –

  • The list elements can easily be inserted or removed without reallocation or reorganization of the entire structure because the data items need not be stored contiguously in memory, while an array has to be declared in the source code, before compiling and running the program.
  • Linked lists allow insertion and removal of nodes at any point in the list, and can do so with a constant number of operations if the link previous to the link being added or removed is maintained during list traversal.

On the other hand, simple linked lists by themselves do not allow random access to the data, or any form of efficient indexing. Thus, many basic operations — such as obtaining the last node of the list, or finding a node that contains a given data, or locating the place where a new node should be inserted — may require sequential scanning of most or all of the list elements.

Below is the list of commonly asked interview questions that uses linked list data structure-


  1. Linked List Implementation | Part 1
  2. Linked List Implementation | Part 2
  3. Static Linked List in C
  4. Clone given Linked List
  5. Delete Linked List
  6. Pop operation in linked list
  7. Insert given node into the correct sorted position in the given sorted linked list
  8. Given a linked list, change it to be in sorted order
  9. Split the nodes of the given linked list into front and back halves
  10. Remove duplicates from a sorted linked list
  11. Move front node of the given list to the front of the another list
  12. Move even nodes to the end of the list in reverse order
  13. Split given linked list into two lists where each list containing alternating elements from it
  14. Construct a linked list by merging alternate nodes of two given lists
  15. Merge given sorted linked lists into one
  16. Merge Sort for Singly Linked List
  17. Intersection of two given sorted linked lists
  18. Reverse linked list | Part 1 (Iterative Solution)
  19. Reverse linked list | Part 2 (Recursive Solution)
  20. Reverse every group of k nodes in given linked list
  21. Find K’th node from the end in a linked list
  22. Merge alternate nodes of two linked lists into the first list
  23. Merge two sorted linked lists from their end
  24. Delete every N nodes in a linked list after skipping M nodes
  25. Rearrange linked list in specific manner in linear time
  26. Check if linked list is palindrome or not
  27. Move last node to front in a given Linked List
  28. Rearrange the linked list in specific manner
  29. Detect Cycle in a linked list (Floyd’s Cycle Detection Algorithm)
  30. Sort linked list containing 0’s, 1’s and 2’s
  31. Remove duplicates from a linked list
  32. Implement Stack using Linked List
  33. Implement Queue using Linked List
  34. Rearrange the linked list so that it has alternating high, low values


Thank you for being with us. 🙂


Leave a Reply

Notify of