Array:
Find a pair with the given sum in an array
Maximum Sum Subarray Problem (Kadane’s Algorithm)
Longest Increasing Subsequence Problem
Backtracking:
Find the longest possible route in a matrix
Find all permutations of a string in C++ (Using Backtracking and STL)
Trees:
Find the next node at the same level as the given node in a binary tree
Print left view of a binary tree
Find the diameter of a binary tree
In-place convert a binary tree to a doubly-linked list
Find ancestors of a given node in a binary tree
Deletion from BST (Binary Search Tree)
Divide & Conquer:
Find the first or last occurrence of a given number in a sorted array
Maximum Subarray Sum using Divide and Conquer
Dynamic Programming:
Longest Common Subsequence Problem
Longest Palindromic Substring Problem
Word Break Problem — Dynamic Programming
BFS/DFS:
Breadth-First Search (BFS) — Iterative and Recursive Implementation
Depth First Search (DFS) — Iterative and Recursive Implementation
Find the shortest path from source to destination in a matrix that satisfies given constraints
Find all occurrences of the given string in a character matrix
Matrix:
Find all paths from the first cell to the last cell of a matrix
Find maximum sum submatrix present in a matrix
Heap:
Merge `M` sorted lists each containing `N` elements
Find k’th largest element in an array