If you don’t know where to start, why not try the following algorithm categories?
Hash
Linked List Operations
- Question 2 : Add Two Numbers
- Question 19 : Remove Nth Node From End of List
- Question 25 : Reverse Nodes in k-Group
- Question 61 : Rotate List
- Question 138 : Copy List with Random Pointer
- Question 206 : Reverse Linked List
Two Pointers Traversal / Sliding Window
- Question 3 : Longest Substring Without Repeating Characters
- Question 11 : Container With Most Water
- Question 15 : 3Sum
- Question 16 : 3Sum Closest
- Question 26 : Remove Duplicates from Sorted Array
- Question 42 : Trapping Rain Water
- Question 121 : Best Time to Buy and Sell Stock
- Question 209 : Minimum Size Subarray Sum
Fast and Slow Pointers Traversal
Interval Merge
String Manipulation
Digital Operations
- Question 7 : Reverse Integer
- Question 8 : String to Integer (atoi)
- Question 9 : Palindrome Number
- Question 43 : Multiply Strings
- Question 172 : Factorial Trailing Zeroes
- Question 258 : Add Digits
Array Operations
- Question 54 : Spiral Matrix
- Question 73 : Set Matrix Zeroes
- Question 78 : Subsets
- Question 384 : Shuffle an Array
- Question 581 : Shortest Unsorted Continuous Subarray
- Question 945 : Minimum Increment to Make Array Unique
Stack
- Question 20 : Valid Parentheses
- Question 32 : Longest Valid Parentheses
- Question 155 : Min Stack
- Question 224 : Basic Calculator
- Question 232 : Implement Queue using Stacks
- Question 316 : Remove Duplicate Letters
Heap
- Question 215 : Kth Largest Element in an Array
- Question 347 : Top K Frequent Elements
Recursion
- Question 21 : Merge Two Sorted Lists
- Question 101 : Symmetric Tree
- Question 104 : Maximum Depth of Binary Tree
- Question 226 : Invert Binary Tree
- Question 236 : Lowest Common Ancestor of a Binary Tree
- Question 1325 : Delete Leaves With a Given Value
Divide and Conquer / Dichotomy
- Question 23 : Merge k Sorted Lists
- Question 33 : Search in Rotated Sorted Array
- Question 34 : Find First and Last Position of Element in Sorted Array
Dynamic Programming
- Question 5 : Longest Palindromic Substring
- Question 53 : Maximum Subarray
- Question 62 : Unique Paths
- Question 64 : Minimum Path Sum
- Question 70 : Climbing Stairs
- Question 118 : Pascal’s Triangle
- Question 300 : Longest Increasing Subsequence
- Question 1143 : Longest Common Subsequence
- Question 1277 : Count Square Submatrices with All One
Backtracking
- Question 10 : Regular Expression Matching
- Question 22 : Generate Parentheses
- Question 40 : Combination Sum II
- Question 46 : Permutations
Trie
Tree Traversal
- Question 94 : Binary Tree Inorder Traversal
- Question 102 : Binary Tree Level Order Traversal
- Question 110 : Balanced Binary Tree
- Question 144 : Binary Tree Preorder Traversal
- Question 145 : Binary Tree Postorder Traversal