 # Top Collection of Coding Interview Questions 🔭 🎯🎺

## Array, String and Some Data Structure

• Find pair with given sum in the array
• Check if subarray with 0 sum is exists or not
• Print all sub-arrays with 0 sum
• Sort binary array in linear time
• Find a duplicate element in a limited range array
• Find maximum length sub-array having given sum
• Find maximum length sub-array having equal number of 0’s and 1’s
• Find maximum product of two integers in an array
• Sort an array containing 0’s, 1’s and 2’s (Dutch National Flag Problem)
• In place merge two sorted arrays
• Merge two arrays by satisfying given constraints
• Find index of 0 to replace to get maximum length sequence of continuous ones
• Shuffle a given array of elements (Fisher–Yates shuffle)
• Rearrange the array with alternate high and low elements
• Find equilibrium index of an array
• Find largest sub-array formed by consecutive integers
• Find majority element (Boyer–Moore Majority Vote Algorithm)
• Move all zeros present in the array to the end
• Replace each element of array with product of every other element without using / operator
• Find Longest Bitonic Subarray in an array
• Longest Increasing Subsequence
• Find maximum difference between two elements in the array by satisfying given constraints
• Maximum Sum Subarray Problem (Kadane’s Algorithm)
• Print continuous subarray with maximum sum
• Maximum Sum Circular Subarray
• Find all distinct combinations of given length — I
• Find all distinct combinations of given length with repetition allowed
• Find maximum sequence of continuous 1’s formed by replacing at-most k zeroes by ones
• Find minimum sum subarray of given size k
• Find maximum product subarray in a given array
• Find subarray having given sum in given array of integers
• Find the length of smallest subarray whose sum of elements is greater than the given number
• Find largest number possible from set of given numbers
• Find the smallest window in array sorting which will make the entire array sorted
• Find maximum sum path involving elements of given arrays
• Maximum profit earned by buying and selling shares any number of times
• Trapping Rain Water within given set of bars
• Find minimum platforms needed in the station so to avoid any delay in arrival of any train
• Decode the array constructed from another array
• Sort an array using one swap
• Find Triplet with given sum in an array
• Length of longest continuous sequence with same sum in given binary arrays
• Reverse every consecutive m elements of the given subarray
• Maximum Product Subset Problem
• Find pairs with given difference k in the array
• Find pairs with given difference k in the array | Constant space solution
• 4 sum problem | Quadruplets with given sum
• Print all quadruplets with given sum | 4-sum problem extended
• Quickselect Algorithm
• Rearrange array such that A[A[i]] is set to i for every element A[i]
• Print all Triplets that forms Arithmetic Progression
• Print all Triplets that forms Geometric Progression
• Print all combination of numbers from 1 to n having sum n
• Replace each element of the array by its corresponding rank in the array
• Print all Triplets in an array with sum less than or equal to given number
• Group elements of an array based on their first occurrence
• Find minimum difference between index of two given elements present in the array
• Find maximum absolute difference between sum of two non-overlapping sub-arrays
• Find all Symmetric Pairs in an Array of Pairs
• Partition an array into two sub-arrays with the same sum
• Find count of distinct elements in every sub-array of size k
• Find two numbers with maximum sum formed by array digits
• Print all sub-arrays of an array having distinct elements
• Find a Triplet having Maximum Product in an Array
• Find Minimum Index of Repeating Element in an Array
• Generate random input from an array according to given probabilities
• Find pair in an array having minimum absolute sum
• Find Index of Maximum Occurring Element with Equal Probability
• Check if an Array is Formed by Consecutive Integers
• Find two non-overlapping pairs having same sum in an array
• Add elements of two arrays into a new array
• Find Minimum Product among all Combinations of Triplets in an Array
• Replace every element of an array with the least greater element on its right
• Find all odd occurring elements in an array having limited range of elements
• Count the distinct absolute values in the sorted array
• Print all combinations of positive integers in increasing order that sum to a given number
• Find all distinct combinations of given length — II
• Find subarrays with given sum in an array
• Find the surpasser count for each element of an array
• Find maximum length sequence of continuous ones (Using Sliding Window)
• Find maximum length sequence of continuous ones
• Find index that divides an array into two non-empty subarrays of equal sum
• Calculate frequency of all elements present in an array of specified range
• Rearrange the array such that it contains positive and negative numbers at alternate positions
• Find a sorted triplet in the given array
• Shuffle an array according to the given order of elements
• Count number of strictly increasing sub-arrays in an array
• Find duplicates within given range k in an array
• Longest Alternating Subarray Problem
• Find minimum range with at-least one element from each of the given arrays
• Find longest subsequence formed by consecutive integers
• Find all elements in an array that are greater than all elements present to their right
• Find missing number in array without using extra space
• Determine index of an element in given array which satisfies given constraints
• Find minimum moves required for converting a given array to an array of zeroes
• Left rotate an array
• Right rotate an array k times
• Find maximum profit earned from at most two stock transactions
• Find Frequency of each element in a sorted array containing duplicates
• Find Minimum and Maximum element in an array using minimum comparisons
• Difference between Subarray, Subsequence and Subset
• Find odd occurring element in an array in single traversal
• Find odd occurring element in logarithmic time
• Find two odd occurring elements in an array without using any extra space
• Check if given array represents min heap or not
• Find K’th smallest element in an array
• Find K’th largest element in an array
• Sort a K-Sorted Array
• Merge M sorted lists of variable length
• Find smallest range with at-least one element from each of the given lists
• Merge M sorted lists each containing N elements
• Find maximum sum of subsequence with no adjacent elements
• Find ways to calculate a target from elements of specified array
• Sort elements by their frequency and Index
• Sort an array based on order defined by another array
• Inversion Count of an array
• Segregate positive and negative integers in linear time
• Find number of rotations in a circularly sorted array
• Search an element in a circular sorted array
• Find first or last occurrence of a given number in a sorted array
• Count occurrences of a number in a sorted array with duplicates
• Find smallest missing element from a sorted array
• Find Floor and Ceil of a number in a sorted array
• Search in a nearly sorted array in logarithmic time
• Find number of 1’s in a sorted binary array
• Find Missing Term in a Sequence in Logarithmic time
• Find missing number and duplicate elements in an array
• Find the peak element in an array
• Find Floor and Ceil of a number in a sorted array (Recursive solution)
• Print all distinct subsets of a given set
• Find two duplicate elements in a limited range array (using XOR)
• Combinations of words formed by replacing given numbers with corresponding alphabets
• 0–1 Knapsack Problem
• Subset sum Problem
• Partition Problem
• 3-Partition Problem
• 3-partition problem extended | Print all partitions
• K-Partition Problem | Printing all Partitions
• Minimum Sum Partition Problem
• Rod Cutting
• Longest Alternating Subsequence Problem
• Coin change-making problem (unlimited supply of coins)
• Coin Change Problem — Find total number of ways to get the denomination of coins
• Find maximum profit earned from at most K stock transactions
• Want to read this story later? Save it in Journal.
• Backtracking
• Print all possible solutions to N Queens Problem
• Print all Possible Knight’s Tours in a chessboard
• Find Shortest Path in Maze
• Find Longest Possible Route in a Matrix
• Find path from source to destination in a matrix that satisfies given constraints
• Find total number of unique paths in a maze from source to destination
• Print All Hamiltonian Path present in a graph
• Print all k-colorable configurations of the graph (Vertex coloring of graph)
• Find all Permutations of a given string
• All combinations of elements satisfying given constraints
• Find all binary strings that can be formed from given wildcard pattern
• K-Partition Problem | Printing all Partitions
• Magnet Puzzle
• Find ways to calculate a target from elements of specified array
• Find minimum number possible by doing at-most K swaps
• Determine if a pattern matches with a string or not
• Generate list of possible words from a character matrix
• Find the path between given vertices in a directed graph
• Find all Possible Topological Orderings of a DAG
• Print all shortest routes in a rectangular grid
• Binary
• Bit Hacks — Part 1 (Basic)
• Bit Hacks — Part 2 (Playing with k’th bit)
• Bit Hacks — Part 3 (Playing with rightmost set bit of a number)
• Bit Hacks — Part 4 (Playing with letters of English alphabet)
• Bit Hacks — Part 5 (Find absolute value of an integer without branching)
• Bit Hacks — Part 6 (Random Problems)
• Brian Kernighan’s Algorithm to count set bits in an integer
• Round up to the next highest power of 2
• Round up to the previous power of 2
• Compute parity of a number using lookup table
• Count set bits using lookup table
• Find the minimum or maximum of two integers without using branching
• Multiply 16-bit integers using 8-bit multiplier
• Swap individual bits at given position in an integer
• Check if given number is power of 4 or not
• Check if given number is power of 8 or not
• Reverse Bits of a given Integer
• Find odd occurring element in an array in single traversal
• Find two odd occurring elements in an array without using any extra space
• Swap two bits at given position in an integer
• Add binary representation of two integers
• Swap Adjacent Bits of a Number
• Print all distinct subsets of a given set
• Perform Division of two numbers without using division operator (/)
• Check if adjacent bits are set in binary representation of a given number
• Conditionally negate a value without branching
• Find two duplicate elements in a limited range array (using XOR)
• Reverse Bits of an integer using lookup table
• Find missing number and duplicate elements in an array
• Circular shift on binary representation of an integer by k positions
• Compute modulus division without division and modulo operator
• Solve given set of problems without using multiplication or division operators
• Find XOR of two numbers without using XOR operator
• Generate power set of a given set
• Huffman Coding
• Find missing number in array without using extra space
• Find odd occurring element in logarithmic time
• Find all odd occurring elements in an array having limited range of elements
• Binary Tree
• Check if two given binary trees are identical or not
• Calculate height of a binary tree
• Delete given Binary Tree
• Inorder Tree Traversal (Iterative & Recursive Implementation)
• Preorder Tree Traversal (Iterative & Recursive Implementation)
• Postorder Tree Traversal (Iterative & Recursive Implementation)
• Level Order Traversal of Binary Tree
• Spiral Order Traversal of Binary Tree
• Reverse Level Order Traversal of Binary Tree
• Print all nodes of a given binary tree in specific order
• Print left view of binary tree
• Print Bottom View of Binary Tree
• Print Top View of Binary Tree
• Find next node in same level for given node in a binary tree
• Check if given binary tree is complete binary tree or not
• In-place convert given binary tree to its sum tree
• Determine if given two nodes are cousins of each other
• Print cousins of given node in a binary tree
• Check if given binary tree is a sum tree or not
• Combinations of words formed by replacing given numbers with corresponding alphabets
• Determine if given binary tree is a subtree of another binary tree or not
• Find diameter of a binary tree
• Check if given binary Tree has symmetric structure or not
• Convert binary tree to its mirror
• Check if binary tree can be converted to another by doing any no. of swaps of left & right child
• Find Lowest Common Ancestor (LCA) of two nodes in a binary tree
• Print all paths from root to leaf nodes in a binary tree
• Find ancestors of given node in a Binary Tree
• Find the distance between given pairs of nodes in a binary tree
• Find Vertical Sum in a given Binary Tree
• Perform vertical traversal of a binary tree — I
• Perform vertical traversal of a binary tree — II
• Print corner nodes of every level in binary tree
• Find the diagonal sum of given binary tree
• Print Diagonal Traversal of Binary Tree
• In-place convert Binary Tree to Doubly Linked List
• Sink nodes containing zero to the bottom of the binary tree
• Convert given binary tree to full tree by removing half nodes
• Truncate given binary tree to remove nodes which lie on a path having sum less than K
• Find maximum sum root-to-leaf path in a binary tree
• Check if given binary tree is height balanced or not
• Find maximum width of given binary tree
• Convert normal binary tree to Left-child right-sibling binary tree
• Determine if given Binary Tree is a BST or not
• Convert a Binary Tree to BST by maintaining its original structure
• Invert a Binary Tree
• Print Right View of a Binary Tree
• Print all paths from leaf to root node in given binary tree
• Iteratively print leaf to root path for every leaf node in a binary tree
• Build Binary Tree from given Parent array
• Find all nodes at given distance from leaf nodes in a binary tree
• Count all subtrees having same value of nodes in a binary tree
• Find Maximum Difference Between a Node and its Descendants in a Binary Tree
• Construct a Binary Tree from Ancestor Matrix
• Calculate height of a binary tree with leaf nodes forming a circular doubly linked list
• Find maximum sum path between two leaves in a binary tree
• Fix a binary tree that is only one swap away from becoming a BST
• Construct a binary tree from inorder and preorder traversal
• Construct a binary tree from inorder and postorder traversals
• Construct a binary tree from inorder and level order sequence
• Construct a full binary tree from preorder sequence with leaf node information
• Construct a full binary tree from a preorder and postorder sequence
• Set next pointer to inorder successor of all nodes in binary tree
• Efficiently print all nodes between two given levels in a binary tree
• Find preorder traversal of a binary tree from its inorder and postorder sequence
• Find the difference between sum of all nodes present at odd and even levels in a binary tree
• Find the size of the largest BST in a Binary Tree
• Link nodes present in each level of a binary tree in the form of a linked list
• Construct a Cartesian Tree from In-order Traversal
• Implementation of Treap Data Structure (Insert, Search and Delete)
• Clone a binary tree with random pointers
• Threaded Binary Tree: Overview and Implementation
• Invert alternate levels of a perfect binary tree
• Convert a Binary Tree into a Doubly Linked List in Spiral Order
• Check if a binary tree is a min-heap or not
• Determine if a binary tree satisfy the height-balanced property of red–black tree
• Depth first search (DFS) vs Breadth first search (BFS)
• BST
• Insertion in BST
• Search given key in BST
• Deletion from BST
• Construct balanced BST from given keys
• Determine if given Binary Tree is a BST or not
• Check if given keys represents same BSTs or not without building the BST
• Find inorder predecessor for given key in a BST
• Find Lowest Common Ancestor (LCA) of two nodes in a Binary Search Tree
• Find K’th smallest and K’th largest element in BST
• Floor and Ceil in a Binary Search Tree
• Find optimal cost to construct binary search tree
• Convert a Binary Tree to BST by maintaining its original structure
• Remove nodes from BST that have keys outside the valid range
• Find a pair with given sum in a BST
• Find inorder successor for given key in a BST
• Replace every element of an array with the least greater element on its right
• Fix a binary tree that is only one swap away from becoming a BST
• Update every key in BST to contain sum of all greater keys
• Check if a given sequence represents preorder traversal of a BST
• Build a Binary Search Tree from a Postorder Sequence
• Build a Binary Search Tree from a Preorder Sequence
• Find a triplet with given sum in a BST
• Count subtrees in a BST whose nodes lies within a given range
• Merge two BSTs into a doubly linked list in sorted order
• Construct a height-balanced BST from an unbalanced BST
• Find the size of the largest BST in a Binary Tree
• Convert a Binary Search Tree into a Min Heap
• Construct a Height-Balanced BST from a Sorted Doubly Linked List
• Divide & Conquer
• Binary Search Algorithm
• Find number of rotations in a circularly sorted array
• Search an element in a circular sorted array
• Find first or last occurrence of a given number in a sorted array
• Count occurrences of a number in a sorted array with duplicates
• Find smallest missing element from a sorted array
• Find Floor and Ceil of a number in a sorted array
• Search in a nearly sorted array in logarithmic time
• Find number of 1’s in a sorted binary array
• Find the peak element in an array
• Maximum Sum Subarray using Divide & Conquer
• Efficiently implement a power function
• Find Missing Term in a Sequence in Logarithmic time
• Division of Two Numbers using Binary Search Algorithm
• Find Floor and Ceil of a number in a sorted array (Recursive solution)
• Find Frequency of each element in a sorted array containing duplicates
• Find odd occurring element in logarithmic time
• Ternary Search vs Binary search
• Exponential search
• Unbounded Binary Search
• Interpolation search
• Merge Sort Algorithm
• QuickSort Algorithm
• Dynamic Programming
• Introduction to Dynamic Programming
• Longest Common Subsequence Problem
• Longest Common Subsequence | Space optimized version
• Longest Common Subsequence of K-sequences
• Longest Common Subsequence | Finding all LCS
• Longest Common Substring Problem
• Longest Palindromic Subsequence Problem
• Longest Repeated Subsequence Problem
• Implement Diff Utility
• Shortest Common Supersequence Problem
• Shortest Common Supersequence | Finding all SCS
• Shortest Common Supersequence Problem using LCS
• Longest Increasing Subsequence Problem
• Longest Decreasing Subsequence Problem
• Longest Bitonic Subsequence
• Increasing Subsequence with Maximum Sum
• The Levenshtein Distance (Edit Distance) Problem
• Find size of largest square sub-matrix of 1’s present in given binary matrix
• Matrix Chain Multiplication
• Find the minimum cost to reach last cell of the matrix from its first cell
• Find longest sequence formed by adjacent numbers in the matrix
• Count number of paths in a matrix with given cost to reach destination cell
• 0–1 Knapsack Problem
• Maximize value of the expression
• Partition Problem
• Subset sum Problem
• 3-Partition Problem
• Minimum Sum Partition Problem
• Rod Cutting
• Maximum Product Rod Cutting
• Coin change-making problem (unlimited supply of coins)
• Coin Change Problem — Find total number of ways to get the denomination of coins
• Total possible solutions to linear equation of k variables
• Longest Alternating Subsequence Problem
• Count number of times a pattern appears in given string as a subsequence
• Collect maximum points in a matrix by satisfying given constraints
• Find all N-digit binary strings without any consecutive 1’s
• Count total possible combinations of N-digit numbers in a mobile keypad
• Word Break Problem
• Determine Minimal Adjustment Cost of an Array
• Check if a string is K-Palindrome or not
• Find total ways to achieve given sum with n throws of dice having k faces
• Wildcard Pattern Matching
• Find number of ways to fill a N x 4 matrix with 1 x 4 tiles
• Ways to reach the bottom-right corner of a matrix with exactly k turns allowed
• Weighted Interval Scheduling Problem
• Box Stacking Problem
• Find total ways to reach the n’th stair with at-most m steps
• Find total ways to reach the n’th stair from the bottom
• Activity Selection Problem
• Find minimum number of deletions required to convert a string into palindrome
• Calculate minimum cost to reach destination city from source city
• Pots of Gold Game Problem
• Find minimum cuts needed for palindromic partition of a string
• Weighted Interval Scheduling using LIS algorithm
• Find minimum jumps required to reach the destination
• Find probability that a person is alive after taking N steps on the island
• Find maximum sum of subsequence with no adjacent elements
• Maximum Length Snake Sequence
• Calculate size of the largest plus of 1’s in binary matrix
• Longest Increasing Subsequence using LCS
• Find maximum profit earned from at most K stock transactions
• Count all paths in a matrix from first cell to last cell
• Check if a string matches with a given wildcard pattern
• Check if given string is interleaving of two other given strings
• Find all employees who directly or indirectly reports to a manager
• Find optimal cost to construct binary search tree
• Find maximum sum of subsequence with no adjacent elements
• Maximum Sum Subarray Problem (Kadane’s Algorithm)
• Longest Alternating Subarray Problem
• Collect maximum value of coins in a matrix
• Find length of longest path in the matrix with consecutive characters
• Find ways to calculate a target from elements of specified array
• Calculate sum of all elements in a sub-matrix in constant time
• Find maximum sum K x K sub-matrix in a given M x N matrix
• Find maximum sum submatrix present in a given matrix
• Single-Source Shortest Paths — Bellman Ford Algorithm
• All-Pairs Shortest Paths — Floyd Warshall Algorithm
• Graph
• Terminology and Representations of Graphs
• Graph Implementation — C, C++, C++ (STL), Java (Collections), Python
• Breadth First Search (BFS) Algorithm
• Depth First Search (DFS) Algorithm
• Depth first search (DFS) vs Breadth first search (BFS)
• Arrival and Departure Time of Vertices in DFS
• Types of edges involved in DFS and relation between them
• Bipartite Graph
• Determine if a given graph is Bipartite Graph using DFS
• Topological Sorting in a DAG
• Kahn’s Topological Sort Algorithm
• Transitive Closure of a Graph
• Check if an undirected graph contains cycle or not
• Total paths in given digraph from given source to destination having exactly m edges
• Determine if an undirected graph is a Tree (Acyclic Connected Graph)
• 2-Edge Connectivity in the graph
• 2-Vertex Connectivity in the graph
• Check if given digraph is a DAG (Directed Acyclic Graph) or not
• Disjoint-Set Data Structure (Union-Find Algorithm)
• Chess Knight Problem — Find Shortest path from source to destination
• Check if given Graph is Strongly Connected or not
• Check if given Graph is Strongly Connected or not using one DFS Traversal
• Union-Find Algorithm for Cycle Detection in undirected graph
• Kruskal’s Algorithm for finding Minimum Spanning Tree
• Single-Source Shortest Paths — Dijkstra’s Algorithm
• Single-Source Shortest Paths — Bellman Ford Algorithm
• All-Pairs Shortest Paths — Floyd Warshall Algorithm
• Find Cost of Shortest Path in DAG using one pass of Bellman-Ford
• Least Cost Path in Weighted Digraph using BFS
• Find maximum cost path in graph from given source to destination
• Determine negative-weight cycle in a graph
• Least cost path in given digraph from given source to destination having exactly m edges
• Find the path between given vertices in a directed graph
• Find all Possible Topological Orderings of a DAG
• Find the correct order of alphabets in a given dictionary of ancient origin
• Find longest path in a Directed Acyclic Graph (DAG)
• Construct a directed graph from undirected graph that satisfies given constraints
• Print all k-colorable configurations of the graph (Vertex coloring of graph)
• Print All Hamiltonian Path present in a graph
• Graph Coloring Problem
• Greedy
• Activity Selection Problem
• Huffman Coding
• Job Sequencing Problem with Deadlines
• Graph Coloring Problem
• Kruskal’s Algorithm for finding Minimum Spanning Tree
• Single-Source Shortest Paths — Dijkstra’s Algorithm
• Shortest Superstring Problem
• Heap
• Introduction to Priority Queues using Binary Heaps
• Min Heap and Max Heap Implementation — C++, Java
• Heap Sort Algorithm
• Check if given array represents min heap or not
• Convert Max Heap to Min Heap in linear time
• Find K’th largest element in an array
• Sort a K-Sorted Array
• Merge M sorted lists of variable length
• Merge K sorted linked lists
• Find K’th smallest element in an array
• Find smallest range with at-least one element from each of the given lists
• Merge M sorted lists each containing N elements
• Find first k non-repeating characters in a string in single traversal
• Find first k maximum occurring words in given set of strings
• Implementation of Treap Data Structure (Insert, Search and Delete)
• Convert a Binary Search Tree into a Min Heap
• Check if a binary tree is a min-heap or not
• Huffman Coding
• External Merge Sort Algorithm
• Linked List Implementation — C, C++, Java, Python
• Linked List | Insertion at Tail
• Pop operation in linked list
• Insert given node into the correct sorted position in the given sorted linked list
• Split the nodes of the given linked list into front and back halves
• Remove duplicates from a sorted linked list
• Move front node of the given list to the front of the another list
• Move even nodes to the end of the list in reverse order
• Split given linked list into two lists where each list containing alternating elements from it
• Construct a linked list by merging alternate nodes of two given lists
• Merge Sort Algorithm for Singly Linked List
• Merge two sorted linked lists into one
• Merge K sorted linked lists
• Intersection of two given sorted linked lists
• Reverse Linked List (Iterative Solution)
• Reverse Linked List (Recursive Solution)
• Reverse every group of k nodes in given linked list
• Find K’th node from the end in a linked list
• Merge alternate nodes of two linked lists into the first list
• Merge two sorted linked lists from their end
• Delete every N nodes in a linked list after skipping M nodes
• Rearrange linked list in specific manner in linear time
• Check if linked list is palindrome or not
• Move last node to front in a given Linked List
• Rearrange the linked list in specific manner
• Detect Cycle in a linked list (Floyd’s Cycle Detection Algorithm)
• Sort linked list containing 0’s, 1’s and 2’s
• Implement Stack using Linked List
• Implement Queue using Linked List
• Remove duplicates from a linked list
• Rearrange the linked list so that it has alternating high, low values
• Rearrange a Linked List by Separating Odd Nodes from the Even Ones
• Calculate height of a binary tree with leaf nodes forming a circular doubly linked list
• XOR Linked List: Overview and Implementation
• Recursively check if linked list of characters is palindrome or not
• Merge two BSTs into a doubly linked list in sorted order
• Remove redundant nodes from a path formed by a linked list
• Add a single-digit number to a linked list representing a number
• Reverse every alternate group of k nodes in a linked list
• Determine if a given linked list is a palindrome or not
• Sort a Doubly Linked List using Merge Sort
• Reverse a Doubly Linked List
• Check if a Linked List of String is Palindromic
• Flatten a multilevel linked list
• Construct a height-balanced BST from an unbalanced BST
• Swap K’th node from beginning with K’th node from end in a Linked List
• Clone a Linked List with Random Pointers
• Update random pointer for each linked list node to point to the maximum node
• Link nodes present in each level of a binary tree in the form of a linked list
• Convert a Ternary Tree to a Doubly Linked List
• Print nodes of a given binary tree in vertical order
• Convert a Binary Tree into a Doubly Linked List in Spiral Order
• Construct a Height-Balanced BST from a Sorted Doubly Linked List
• In-place merge two sorted linked lists without modifying links of the first list
• Reverse specified portion of a Linked List
• Matrix
• Print Matrix in Spiral Order
• Create Spiral Matrix from given array
• Shift all matrix elements by 1 in Spiral Order
• Find Shortest path from source to destination in a matrix that satisfies given constraints
• Change all elements of row i and column j in a matrix to 0 if cell (i, j) has value 0
• Print diagonal elements of the matrix having positive slope
• Find all paths from first cell to last cell of a matrix
• Replace all occurrences of 0 that are not surrounded by 1 in a binary matrix
• In-place rotate the matrix by 90 degrees in clock-wise direction
• Count negative elements present in sorted matrix in linear time
• Report all occurrences of an element in row wise and column wise sorted matrix in linear time
• Calculate sum of all elements in a sub-matrix in constant time
• Find maximum sum K x K sub-matrix in a given M x N matrix
• Find maximum sum submatrix present in a given matrix
• Count the number of islands
• Flood Fill Algorithm
• Find shortest safe route in a field with sensors present
• Find all occurrences of given string in a character matrix
• Shortest path in a Maze | Lee Algorithm
• Check if given matrix is Toeplitz matrix or not
• In-place rotate the matrix by 180 degrees
• Fill Binary Matrix with Alternating Rectangles of 0 and 1
• Find all common elements present in every row of given matrix
• Construct a Binary Tree from Ancestor Matrix
• Find common elements present in all rows of a matrix
• Find index of the row containing maximum number of 1’s in a binary matrix
• Find the largest square sub-matrix which is surrounded by all 1's
• Find minimum passes required to convert all negative values in the matrix
• Print a spiral square matrix without using any extra space
• Print all shortest routes in a rectangular grid
• Find length of longest path in the matrix with consecutive characters
• Collect maximum value of coins in a matrix
• Young Tableau | Insert, Search, Extract-Min, Delete, Replace
• Sort an array using Young tableau
• Find path from source to destination in a matrix that satisfies given constraints
• Generate list of possible words from a character matrix
• Find probability that a person is alive after taking N steps on the island
• Collect maximum points in a matrix by satisfying given constraints
• Count number of paths in a matrix with given cost to reach destination cell
• Find longest sequence formed by adjacent numbers in the matrix
• Find the minimum cost to reach last cell of the matrix from its first cell
• Ways to reach the bottom-right corner of a matrix with exactly k turns allowed
• Matrix Chain Multiplication
• Find size of largest square sub-matrix of 1’s present in given binary matrix
• Chess Knight Problem — Find Shortest path from source to destination
• Find Duplicate rows in a binary matrix
• Print all possible solutions to N Queens Problem
• Print all Possible Knight’s Tours in a chessboard
• Find Shortest Path in Maze
• Find Longest Possible Route in a Matrix
• Find total number of unique paths in a maze from source to destination
• Calculate size of the largest plus of 1’s in binary matrix
• Find the maximum value of M[c][d] — M[a][b] over all choices of indexes
• Find shortest distance of every cell from landmine in a Maze
• Find shortest route in a device to construct the given string
• Calculate minimum cost to reach destination city from source city
• Count all paths in a matrix from first cell to last cell
• Merge M sorted lists each containing N elements
• Travelling Salesman Problem using Branch and Bound
• Puzzles
• Clock Angle Problem — Find angle between hour and minute hand
• Generate power set of a given set
• Implement power function without using multiplication and division operators
• Print all numbers between 1 to N without using semicolon
• Swap two numbers without using third variable
• Determine the if condition to print specific output
• Find maximum & minimum of triplet without using conditional statement and ternary operator
• Find numbers represented as sum of two cubes for two different pairs
• Print “Hello World” with empty main() function
• Tower of Hanoi Problem
• Print all numbers between 1 to N without using any loop
• Print a semicolon without using semicolon anywhere in the program
• Multiply two numbers without using multiplication operator or loops
• Find square of a number without using multiplication and division operator
• Find if a number is even or odd without using any conditional statement
• Set both elements of a binary array to 0 in single line
• Find minimum number without using conditional statement or ternary operator
• Perform Division of two numbers without using division operator (/)
• Generate 0 and 1 with 75% and 25% Probability
• Generate Desired Random Numbers With Equal Probability
• Return 0, 1 and 2 with equal Probability using the specified function
• Generate Fair Results from a Biased Coin
• Generate numbers from 1 to 7 with equal probability using specified function
• Implement Ternary Operator Without Using Conditional Expressions
• Determine if two integers are equal without using comparison and arithmetic operators
• Return 0 and 1 with equal Probability using the specified function
• Generate random input from an array according to given probabilities
• Compute modulus division without division and modulo operator
• Queue
• Queue Implementation using Array/List — C, C++, Java, Python
• Queue Implementation using Linked List
• Implement Stack using Queue Data Structure
• Implement a Queue using Stack Data Structure
• Efficiently print all nodes between two given levels in a binary tree
• Chess Knight Problem — Find Shortest path from source to destination
• Shortest path in a Maze | Lee Algorithm
• Find shortest safe route in a field with sensors present
• Flood Fill Algorithm
• Count the number of islands
• Find Shortest path from source to destination in a matrix that satisfies given constraints
• Generate binary numbers between 1 to N
• Calculate height of a binary tree
• Delete given Binary Tree
• Level Order Traversal of Binary Tree
• Spiral Order Traversal of Binary Tree
• Reverse Level Order Traversal of Binary Tree
• Print all nodes of a given binary tree in specific order
• Print left view of binary tree
• Find next node in same level for given node in a binary tree
• Check if given binary tree is complete binary tree or not
• Print Diagonal Traversal of Binary Tree
• Print corner nodes of every level in binary tree
• Invert a Binary Tree
• Find minimum passes required to convert all negative values in the matrix
• Convert a Binary Tree into a Doubly Linked List in Spiral Order
• Check if a binary tree is a min-heap or not
• Invert alternate levels of a perfect binary tree
• Convert a Binary Search Tree into a Min Heap
• Find shortest distance of every cell from landmine in a Maze
• Breadth First Search (BFS) Algorithm
• Check if an undirected graph contains cycle or not
• Find maximum cost path in graph from given source to destination
• Total paths in given digraph from given source to destination having exactly m edges
• Least cost path in given digraph from given source to destination having exactly m edges
• Sorting
• Insertion Sort Algorithm
• Selection Sort Algorithm
• Bubble Sort Algorithm
• Merge Sort Algorithm
• Iterative Merge Sort Algorithm (Bottom-up Merge Sort)
• QuickSort Algorithm
• Iterative Implementation of QuickSort
• Hybrid QuickSort
• QuickSort using Dutch National Flag Algorithm
• QuickSort using Hoare’s Partitioning scheme
• Heap Sort Algorithm
• Introsort Algorithm
• External Merge Sort Algorithm
• Counting Sort Algorithm
• Inversion Count of an array
• Sort an array using Young tableau
• Merge Sort Algorithm for Singly Linked List
• Problems solved using partitioning logic of QuickSort
• Sort a Doubly Linked List using Merge Sort
• Sort elements by their frequency and Index
• Sort an array based on order defined by another array
• Efficiently sort an array with many duplicated values
• Find largest number possible from set of given numbers
• Find the surpasser count for each element of an array
• Segregate positive and negative integers using Merge Sort
• Group anagrams together from given list of words
• Stack
• Stack Implementation using Array/List — C, C++, Java, Python
• Stack Implementation using Linked List
• Check if given expression is balanced expression or not
• Find duplicate parenthesis in an expression
• Evaluate given postfix expression
• Decode the given sequence to construct minimum number without repeated digits
• Design a stack which returns minimum element in constant time
• Design a stack which returns minimum element without using auxiliary stack
• Merging Overlapping Intervals
• Reverse String without using Recursion
• Implement Stack using Queue Data Structure
• Implement a Queue using Stack Data Structure
• Implement two stacks in a single array
• Recursive solution to sort a stack
• Find length of the longest balanced parenthesis in a string
• Reverse a string using stack data structure
• Find all elements in an array that are greater than all elements present to their right
• Inorder Tree Traversal
• Preorder Tree Traversal
• Postorder Tree Traversal
• Find preorder traversal of a binary tree from its inorder and postorder sequence
• Find ancestors of given node in a Binary Tree
• Check if two given binary trees are identical or not
• Reverse Level Order Traversal of Binary Tree
• Reverse given text without reversing the individual words
• Find all binary strings that can be formed from given wildcard pattern
• Iterative Implementation of QuickSort
• Depth First Search (DFS) Algorithm
• Invert a Binary Tree
• Print leaf to root path for every leaf node in a binary tree
• Longest Increasing Subsequence
• Invert alternate levels of a perfect binary tree
• String
• Check if given string is a rotated palindrome or not
• Longest Palindromic Substring (Non-DP Space Optimized Solution)
• Check if repeated subsequence is present in the string or not
• Check if strings can be derived from each other by circularly rotating them
• Check if given set of moves is circular or not
• Convert given number into corresponding excel column name
• Determine if two strings are anagram or not
• Find all binary strings that can be formed from given wildcard pattern
• Find all interleaving of given strings
• Isomorphic Strings
• Find all possible palindromic substrings in a string
• Find all possible combinations of words formed from mobile keypad
• Find all possible combinations by replacing given digits with characters of the corresponding list
• Find all words from given list that follows same order of characters as given pattern
• Group anagrams together from given list of words
• Find minimum operations required to transform a string into another string
• Determine if a string can be transformed into another string with a single edit
• Find length of the longest balanced parenthesis in a string
• In place remove all occurrences of ‘AB’ and ‘C’ from the string
• Longest even length palindromic sum substring
• Print string in zig-zag form in k rows
• Reverse given text without reversing the individual words
• Run Length Encoding (RLE) Data Compression Algorithm
• Find the longest substring of given string containing k distinct characters
• Find all palindromic permutations of a string
• Find all substrings of a string that are permutation of a given string
• Find the longest substring of given string containing all distinct characters
• Iterative Approach to find Permutations of a String
• Generate all Permutations of a String in Java
• Find all lexicographically next permutations of a string sorted in ascending order
• Find Lexicographically minimal string rotation
• Find all strings of given length containing balanced parentheses
• Find all combinations of non-overlapping substrings of a string
• Determine if a given string is palindrome or not
• Find the minimum number of inversions needed to make the given expression balanced
• Construct the longest palindrome by shuffling or deleting characters from a string
• Print all combinations of phrases formed by picking words from each of the given lists
• Break a string into all possible combinations of non-overlapping substrings
• Remove all extra spaces from a string
• Remove adjacent duplicate characters from a string
• Find first non-repeating character in a string by doing only one traversal of it
• Find all N-digit strictly increasing numbers (Bottom-Up and Top-Down Approach)
• Find all N-digit binary numbers having more 1’s than 0’s for any prefix
• Find all N-digit numbers with given sum of digits
• Find all N-digit binary numbers with k-bits set where k ranges from 1 to N
• Find all N-digit binary numbers with equal sum of bits in its two halves
• Find all N-digit numbers with equal sum of digits at even and odd index
• Find all Lexicographic Permutations of a String
• Lexicographic Rank of a String
• Find all lexicographically previous permutations of a string sorted in descending order
• Replace all non-overlapping occurrences of the pattern
• Introduction to Pattern Matching
• Implementation of KMP Algorithm
• Reverse String without using Recursion
• Reverse given string using Recursion
• Determine if characters of a String follow a specified order or not
• In-place remove all adjacent duplicates from the given string
• Check if given sentence is syntactically correct or not
• Find all Permutations of a given string
• Find first k non-repeating characters in a string in single traversal
• Check if given string is interleaving of two other given strings
• Decode the given sequence to construct minimum number without repeated digits
• Combinations of words formed by replacing given numbers with corresponding alphabets
• Count number of times a pattern appears in given string as a subsequence
• Check if a string matches with a given wildcard pattern
• Find all words matching a pattern in the given dictionary
• The Levenshtein Distance (Edit Distance) Problem
• Longest Common Subsequence Problem
• Longest Repeated Subsequence Problem
• Longest Palindromic Subsequence using Dynamic Programming
• Longest Common Substring Problem
• Shortest Common Supersequence Problem
• Word Break Problem
• Wildcard Pattern Matching
• Find minimum cuts needed for palindromic partition of a string
• Check if a string is K-Palindrome or not
• Find shortest route in a device to construct the given string
• Find minimum number possible by doing at-most K swaps
• Determine if a pattern matches with a string or not
• Find minimum number of deletions required to convert a string into palindrome
• Trie
• Trie Implementation — C, C++, Java, Python
• Memory Efficient Implementation of Trie | Insert, Search and Delete
• Longest Common Prefix in given set of strings (using Trie)
• Lexicographic sorting of given set of keys
• Find maximum occurring word in given set of strings
• Find first k maximum occurring words in given set of strings
• Find Duplicate rows in a binary matrix
• Word Break Problem | Using Trie
• Generate list of possible words from a character matrix
• Find all words matching a pattern in the given dictionary
• How is a bubble sort algorithm implemented? (solution)
• How is a merge sort algorithm implemented? (solution)
• How do you count the occurrence of a given character in a string? (solution)
• How do you print the first non-repeated character from a string? (solution)
• How do you convert a given String into int like the atoi()? (solution)
• How do you implement a bucket sort algorithm? (solution)
• How do you implement a counting sort algorithm? (solution)
• How do you remove duplicates from an array in place? (solution)
• How do you reverse an array in place in Java? (solution)
• How are duplicates removed from an array without using any library? (solution)
• How is a radix sort algorithm implemented? (solution)
• How do you swap two numbers without using the third variable? (solution)
• How do you check if two rectangles overlap with each other? (solution)
• How do you design a vending machine? (solution)
• How do you find the missing number in a given integer array of 1 to 101? (solution)
• How do you find the duplicate number on a given integer array? (solution)
• How do you find duplicate numbers in an array if it contains multiple duplicates? (solution)
• Difference between a stable and unstable sorting algorithm? (answer)
• How is an iterative quicksort algorithm implemented? (solution)
• How do you find the largest and smallest number in an unsorted integer array? (solution)
• How do you reverse a linked list in place? (solution)
• How to add an element at the middle of the linked list? (solution)
• How do you sort a linked list in Java? (solution)
• How do you find all pairs of an integer array whose sum is equal to a given number? (solution)
• How do you implement an insertion sort algorithm? (solution)
• How are duplicates removed from a given array in Java? (solution)
• how to remove the duplicate character from String? (solution)
• How to find the maximum occurring character in given String? (solution)
• How is an integer array sorted in place using the quicksort algorithm? (solution)
• How do you reverse a given string in place? (solution)
• How do you print duplicate characters from a string? (solution)
• How do you check if two strings are anagrams of each other? (solution)
• How do you find all the permutations of a string? (solution)
• How can a given string be reversed using recursion? (solution)
• How do you check if a given string is a palindrome? (solution)
• How do you find the length of the longest substring without repeating characters? (solution)
• Given string str, - How do you find the longest palindromic substring in str? (solution)
• How do you check if a string contains only digits? (solution)
• How to remove Nth Node from the end of a linked list? (solution)
• How to merge two sorted linked list? (solution)
• How to convert a sorted list to a binary search tree? (solution)
• How do you find duplicate characters in a given string? (solution)
• How do you count a number of vowels and consonants in a given string? (solution)
• How do you reverse words in a given sentence without using any library method? (solution)
• How do you check if two strings are a rotation of each other? (solution)
• How to convert a byte array to String? (solution)
• How do you remove a given character from String? (solution)
• How do you find the middle element of a singly linked list in one pass? (solution)
• How do you check if a given linked list contains a cycle? - How do you find the starting node of the cycle? (solution)
• How do you reverse a linked list? (solution)
• How do you reverse a singly linked list without recursion? (solution)
• How are duplicate nodes removed in an unsorted linked list? (solution)
• How do you find the length of a singly linked list? (solution)
• How do you find the third node from the end in a singly linked list? (solution)
• How do you find the sum of two linked lists using Stack? (solution)
• How to remove duplicates from a sorted linked list? (solution)
• How to find the node at which the intersection of two singly linked lists begins. (solution)
• Given a linked list and a value x, partition it such that all nodes less than x come before nodes greater than or equal to x. (solution)
• How to check if a given linked list is a palindrome? (solution)
• How to remove all elements from a linked list of integers which matches with given value? (solution)
• How is a binary search tree implemented? (solution)
• How do you perform preorder traversal in a given binary tree? (solution)
• How do you traverse a given binary tree in preorder without recursion? (solution)
• How do you perform an inorder traversal in a given binary tree? (solution)
• How do you print all nodes of a given binary tree using inorder traversal without recursion? (solution)
• How do you implement a postorder traversal algorithm? (solution)
• How do you traverse a binary tree in postorder traversal without recursion? (solution)
• How are all leaves of a binary search tree printed? (solution)
• How do you count a number of leaf nodes in a given binary tree? (solution)
• How do you perform a binary search in a given array? (solution)
• How to Swap two numbers without using the third variable? (solution)
• How to check if two rectangles overlap with each other? (solution)
• How to design a Vending Machine? (solution)
• How to implement an LRU Cache in your favorite programming language? (solution)
• How to check if a given number is a Palindrome? (solution)
• How to check if a given number is an Armstrong number? (solution)
• How to find all prime factors of a given number? (solution)
• How to find the largest prime factor of a given integral number? (solution)
• How to print all prime numbers up to a given number? (solution)
• How to calculate the square root of a given number? (solution)
• How to check if the given number is a prime number? (solution)
• How to add two numbers without using the plus operator in Java? (solution)
• How to check if a given number is even/odd without using Arithmetic operator? (solution)
• How to print a given Pyramid structure? (solution)
• How to find the highest repeating world from a given file in Java? (solution)
• How to convert a decimal number to binary in Java? (solution)
• How to check if a given year is a leap year in Java? (solution)
• Can you implement a Binary search Algorithm without recursion? (solution)
• Difference between a stable and unstable sorting algorithm? (answer)
• What is Depth First Search Algorithm for a binary tree? (solution)
• How is an iterative quicksort algorithm implemented? (solution)
• How do you implement an insertion sort algorithm? (solution)
• How is a merge sort algorithm implemented? (solution)
• What is the difference between Comparison and Non-Comparison Sorting Algorithms? (answer)
• How do implement Sieve of Eratosthenes Algorithms for Prime Number? (solution)
• How to find sub array with maximum sum? (solution)
• Find pair with given sum in the array
• Check if subarray with 0 sum is exists or not
• Print all sub-arrays with 0 sum
• Sort binary array in linear time
• Find a duplicate element in a limited range array
• Find maximum length sub-array having given sum
• Find maximum length sub-array having equal number of 0’s and 1’s
• Find maximum product of two integers in an array
• Sort an array containing 0’s, 1’s and 2’s (Dutch National Flag Problem)
• In place merge two sorted arrays
• Merge two arrays by satisfying given constraints
• Find index of 0 to replace to get maximum length sequence of continuous ones
• Shuffle a given array of elements (Fisher–Yates shuffle)
• Rearrange the array with alternate high and low elements
• Find equilibrium index of an array
• Find largest sub-array formed by consecutive integers
• Find majority element (Boyer–Moore Majority Vote Algorithm)
• Move all zeros present in the array to the end
• Replace each element of array with product of every other element without using / operator
• Find Longest Bitonic Subarray in an array
• Longest Increasing Subsequence
• Find maximum difference between two elements in the array by satisfying given constraints
• Maximum Sum Subarray Problem (Kadane’s Algorithm)
• Print continuous subarray with maximum sum
• Maximum Sum Circular Subarray
• Find all distinct combinations of given length — I
• Find all distinct combinations of given length with repetition allowed
• Find maximum sequence of continuous 1’s formed by replacing at-most k zeroes by ones
• Find minimum sum subarray of given size k
• Find maximum product subarray in a given array
• Find subarray having given sum in given array of integers
• Find the length of smallest subarray whose sum of elements is greater than the given number
• Find largest number possible from set of given numbers
• Find the smallest window in array sorting which will make the entire array sorted
• Find maximum sum path involving elements of given arrays
• Maximum profit earned by buying and selling shares any number of times
• Trapping Rain Water within given set of bars
• Find minimum platforms needed in the station so to avoid any delay in arrival of any train
• Decode the array constructed from another array
• Sort an array using one swap
• Find Triplet with given sum in an array
• Length of longest continuous sequence with same sum in given binary arrays
• Reverse every consecutive m elements of the given subarray
• Maximum Product Subset Problem
• Find pairs with given difference k in the array
• Find pairs with given difference k in the array | Constant space solution
• 4 sum problem | Quadruplets with given sum
• Print all quadruplets with given sum | 4-sum problem extended
• Quickselect Algorithm
• Rearrange array such that A[A[i]] is set to i for every element A[i]
• Print all Triplets that forms Arithmetic Progression
• Print all Triplets that forms Geometric Progression
• Print all combination of numbers from 1 to n having sum n
• Replace each element of the array by its corresponding rank in the array
• Print all Triplets in an array with sum less than or equal to given number
• Group elements of an array based on their first occurrence
• Find minimum difference between index of two given elements present in the array
• Find maximum absolute difference between sum of two non-overlapping sub-arrays
• Find all Symmetric Pairs in an Array of Pairs
• Partition an array into two sub-arrays with the same sum
• Find count of distinct elements in every sub-array of size k
• Find two numbers with maximum sum formed by array digits
• Print all sub-arrays of an array having distinct elements
• Find a Triplet having Maximum Product in an Array
• Find Minimum Index of Repeating Element in an Array
• Generate random input from an array according to given probabilities
• Find pair in an array having minimum absolute sum
• Find Index of Maximum Occurring Element with Equal Probability
• Check if an Array is Formed by Consecutive Integers
• Find two non-overlapping pairs having same sum in an array
• Add elements of two arrays into a new array
• Find Minimum Product among all Combinations of Triplets in an Array
• Replace every element of an array with the least greater element on its right
• Find all odd occurring elements in an array having limited range of elements
• Count the distinct absolute values in the sorted array
• Print all combinations of positive integers in increasing order that sum to a given number
• Find all distinct combinations of given length — II
• Find subarrays with given sum in an array
• Find the surpasser count for each element of an array
• Find maximum length sequence of continuous ones (Using Sliding Window)
• Find maximum length sequence of continuous ones
• Find index that divides an array into two non-empty subarrays of equal sum
• Calculate frequency of all elements present in an array of specified range
• Rearrange the array such that it contains positive and negative numbers at alternate positions
• Find a sorted triplet in the given array
• Shuffle an array according to the given order of elements
• Count number of strictly increasing sub-arrays in an array
• Find duplicates within given range k in an array
• Longest Alternating Subarray Problem
• Find minimum range with at-least one element from each of the given arrays
• Find longest subsequence formed by consecutive integers
• Find all elements in an array that are greater than all elements present to their right
• Find missing number in array without using extra space
• Determine index of an element in given array which satisfies given constraints
• Find minimum moves required for converting a given array to an array of zeroes
• Left rotate an array
• Right rotate an array k times
• Find maximum profit earned from at most two stock transactions
• Find Frequency of each element in a sorted array containing duplicates
• Find Minimum and Maximum element in an array using minimum comparisons
• Difference between Subarray, Subsequence and Subset
• Find odd occurring element in an array in single traversal
• Find odd occurring element in logarithmic time
• Find two odd occurring elements in an array without using any extra space
• Check if given array represents min heap or not
• Find K’th smallest element in an array
• Find K’th largest element in an array
• Sort a K-Sorted Array
• Merge M sorted lists of variable length
• Find smallest range with at-least one element from each of the given lists
• Merge M sorted lists each containing N elements
• Find maximum sum of subsequence with no adjacent elements
• Find ways to calculate a target from elements of specified array
• Sort elements by their frequency and Index
• Sort an array based on order defined by another array
• Inversion Count of an array
• Segregate positive and negative integers in linear time
• Find number of rotations in a circularly sorted array
• Search an element in a circular sorted array
• Find first or last occurrence of a given number in a sorted array
• Count occurrences of a number in a sorted array with duplicates
• Find smallest missing element from a sorted array
• Find Floor and Ceil of a number in a sorted array
• Search in a nearly sorted array in logarithmic time
• Find number of 1’s in a sorted binary array
• Find Missing Term in a Sequence in Logarithmic time
• Find missing number and duplicate elements in an array
• Find the peak element in an array
• Find Floor and Ceil of a number in a sorted array (Recursive solution)
• Print all distinct subsets of a given set
• Find two duplicate elements in a limited range array (using XOR)
• Combinations of words formed by replacing given numbers with corresponding alphabets
• 0–1 Knapsack Problem
• Subset sum Problem
• Partition Problem
• 3-Partition Problem
• 3-partition problem extended | Print all partitions
• K-Partition Problem | Printing all Partitions
• Minimum Sum Partition Problem
• Rod Cutting
• Longest Alternating Subsequence Problem
• Coin change-making problem (unlimited supply of coins)
• Coin Change Problem — Find total number of ways to get the denomination of coins
• Find maximum profit earned from at most K stock transactions