Top 30 Data Structures Problems for Technical Interview Preparation


Below problems are chosen on basis of concepts involved in solving them, that will accelerate your thought process and help you further to solve several similar problems asked in a coding interview. There might be multiple approaches discussed to solve few problems. We recommend to go through each one of them.



Find pair with given sum in the array

Maximum subarray problem (Kadane’s algorithm)

Longest Increasing Subsequence



Find Longest Possible Route in a Matrix

Find all Permutations of a given string



Find next node in same level for given node in a binary tree

Print left view of binary tree

Find diameter of a binary tree

In-place convert convert given Binary Tree to Doubly Linked List

Find ancestors of given node in a Binary Tree

Deletion from BST


Divide & Conquer:

Merge Sort


Find first or last occurrence of a given number in a sorted array

Maximum Sum Subarray using Divide & Conquer


Dynamic Programming:

0-1 Knapsack problem

Longest Common Subsequence | Introduction & LCS Length

Longest Palindromic Substring (Non-DP Space Optimized Solution)

Word Break Problem



Breadth First Search (BFS) | Iterative & Recursive Implementation

Minimum number of throws required to win Snake and Ladder game

Depth First Search (DFS) | Iterative & Recursive Implementation

Find Shortest path from source to destination in a matrix that satisfies given constraints

Flood fill Algorithm

Find all occurrences of given string in a character matrix



Find all paths from first cell to last cell of a matrix

Find maximum sum submatrix present in a given matrix



Merge M sorted lists each containing N elements

Find K’th largest element in an array


Linked List:

Reverse linked list

Clone given Linked List

Merge given sorted linked lists into one


Thank you for being with us. 🙂


Leave a Reply

newest oldest most voted
Notify of

Knowing advanced algorithmic and data structure concepts is what separates a programmer who can get something done 75% of the time from one who can get something done 90-100% of the time. Having a bunch of code-only programmers means when something unique comes up that has to scale in a complicated manner, it will have to be passed upwards to someone in a higher position, using up their time on a project that was assigned to someone they manage. It also shows that those programmers probably won’t get promoted to those positions.


kudos. Awesome list.


Thanks! this is really useful.

Andrew Thomas

The problems given are very useful for those who are preparing for the data structure interviews. Thanks!