Topics
Browse problems by algorithmic topics and techniques
Basics
Basic
25 problemsComplete Search
Techniques for exhaustive search problems
Iterative
Recursive
Backtracking
Basic
20 problemsBinary Search
Divide and conquer searching algorithm
Searching
Divide and Conquer
Basic
30 problemsGreedy Algorithms
Making locally optimal choices at each stage
Exchange Arguments
Structural Arguments
Data Structures
Basic
35 problemsBasic Data Structures
Fundamental data structures for problem solving
Arrays
Lists
Stacks
Queues
Intermediate
25 problemsAdvanced Data Structures
Complex data structures for efficient operations
Trees
Heaps
Disjoint Sets
Intermediate
20 problemsRange Queries
Efficient techniques for range-based operations
Prefix Sums
Segment Trees
Fenwick Trees
Algorithms
Intermediate
50 problemsDynamic Programming
Breaking down problems into simpler subproblems
Memoization
Tabulation
State Optimization
Intermediate
40 problemsGraph Algorithms
Algorithms for processing graphs and networks
DFS
BFS
Shortest Paths
MST
Intermediate
30 problemsString Algorithms
Specialized algorithms for string processing
Pattern Matching
String Hashing
Suffix Structures