Linked List: 105 Interview Questions for DSA Success
1. Linked List Basics
- Introduction to Linked Lists
- Creating a Singly Linked List
- Traversing a Linked List
- Inserting at the Beginning
- Inserting at the End
- Inserting at a Given Position
- Deleting a Node by Value
- Deleting a Node by Position
- Deleting the First Node
- Deleting the Last Node
2. Search and Length Operations
- Searching for an Element in a Linked List
- Finding the Length of a Linked List
- Counting Occurrences of a Given Element
- Finding the Middle of a Linked List
- Finding the Nth Node from the End
- Detecting a Loop in a Linked List (Floyd’s Cycle Detection)
- Removing a Loop in a Linked List
- Finding the Start of a Loop
- Checking if a Linked List is Circular
- Checking if a Linked List is a Palindrome
3. Linked List Reversal
- Reversing a Linked List Iteratively
- Reversing a Linked List Recursively
- Reversing a Linked List in Groups of K
- Reversing Alternate K Nodes
- Reversing the First Half of the Linked List
- Reversing the Second Half of the Linked List
- Reverse Nodes Between M and N
- Reverse Every Alternate Node in a Linked List
- Reverse Pairs in a Linked List
- Reverse a Doubly Linked List
4. Linked List with Recursion
- Recursive Approach to Traversal
- Recursive Approach to Search
- Recursive Approach to Insertion
- Recursive Approach to Deletion
- Recursive Merge of Two Sorted Linked Lists
- Recursive Reversal of a Linked List
- Recursive Approach to Flatten a Multilevel Linked List
- Recursive Palindrome Check
- Recursive Segregation of Even and Odd Nodes
- Recursive Pairwise Swap of Nodes
5. Two-Pointer Techniques in Linked Lists
- Finding the Intersection of Two Linked Lists
- Detecting and Removing Loop (Two-Pointer Method)
- Finding the Middle Node (Tortoise and Hare Approach)
- Merging Two Sorted Linked Lists
- Detecting Intersection in Circular Linked Lists
- Reordering Linked List (Odd-Even Nodes)
- Sorting a Linked List Using Merge Sort (Two-Pointers)
- Quick Sort on Linked List Using Two Pointers
- Reversing Nodes in a Linked List with Two Pointers
6. Advanced Linked List Operations
- Merge K Sorted Linked Lists
- Flattening a Multilevel Linked List
- Clone a Linked List with Random Pointers
- Rotate a Linked List Left by K Positions
- Rotate a Linked List Right by K Positions
- Segregate Even and Odd Nodes in a Linked List
- Add Two Numbers Represented by Linked Lists
- Subtract Two Numbers Represented by Linked Lists
- Multiply Two Numbers Represented by Linked Lists
- Divide Two Numbers Represented by Linked Lists
7. Circular Linked Lists
- Introduction to Circular Linked Lists
- Creating a Circular Linked List
- Insertion at the Beginning of a Circular Linked List
- Insertion at the End of a Circular Linked List
- Deletion from a Circular Linked List
- Converting a Singly Linked List to a Circular Linked List
- Splitting a Circular Linked List into Two Halves
- Josephus Problem in Circular Linked List
- Detecting Loop in a Circular Linked List
- Traversing a Circular Linked List
8. Doubly Linked Lists
- Introduction to Doubly Linked Lists
- Creating a Doubly Linked List
- Insertion at the Beginning of a Doubly Linked List
- Insertion at the End of a Doubly Linked List
- Insertion After a Given Node in a Doubly Linked List
- Deletion of a Node from a Doubly Linked List
- Reversing a Doubly Linked List
- Flattening a Doubly Linked List
- Converting a Binary Tree to a Doubly Linked List
- Traversing a Doubly Linked List in Both Directions
9. Specialized Linked Lists
- Skip List Implementation
- XOR Linked List (Memory Efficient Doubly Linked List)
- Flattening a Linked List with Child Pointers
- LRU Cache Implementation Using Doubly Linked List
- Implementing Stack Using Linked List
- Implementing Queue Using Linked List
- Convert Binary Numbers in Linked List to Integer
- Clone a Multilevel Linked List
- Add 1 to a Number Represented by Linked List
- Implementing a Priority Queue Using Linked List
10. Complex Problems on Linked Lists
- Intersection Point of Y-Shaped Linked Lists
- Swapping Nodes in a Linked List Without Swapping Data
- Rotate a Linked List in Blocks of K
- Delete Nodes Which Have Greater Value on the Right Side
- Delete N Nodes After M Nodes
- Flatten a Linked List Where Each Node Has a Next and Child Pointer
- Segregate 0s, 1s, and 2s in a Linked List
- Flatten a Linked List of Linked Lists
- Convert a Sorted Linked List to a Balanced BST
- Rearrange a Linked List in Zig-Zag Fashion
11. More Essential Interview Questions:
- Implement a Function to Merge Two Sorted Linked Lists Without Using Extra Space.
- Find the Intersection Node of Two Linked Lists Using Length Difference.
- Check for Overlapping Cycles in Two Linked Lists.
- Remove Duplicates from an Unsorted Linked List.
- Find and Remove the Kth Node from the End in One Pass.
- Create a Copy of a Linked List with a Random Pointer in O(n) Time.
For more detailed discussions and insights on Linked List interview questions, follow me on my Linkedin. I'll keep sharing tips, explanations, and solutions to help you prepare for your next coding interview.
Top comments (2)
welcome.