Tags

Drill problems by technique.

Tags are secondary labels that cut across the main topic map. Use them to focus on specific tools and patterns: hash tables, DFS, matrix traversal, sorting, recursion, and more.

Array
29 problems

Problems centered on iterating, indexing, and transforming linear arrays.

Backtracking
2 problems

Recursive search with pruning — combinations, permutations, word search, Sudoku.

Binary Search
3 problems

Problems searching a sorted space or applying parametric search on the answer.

Binary Tree
11 problems

Problems on binary tree traversal, construction, path sums, and BST validation.

Bit Manipulation
5 problems

Problems exploiting bitwise operators — XOR tricks, masks, popcount, integer encoding.

Breadth-First Search
7 problems

BFS problems for shortest paths, level traversal, and connected components.

Depth-First Search
16 problems

DFS problems on trees, graphs, and grids — recursion, backtracking, post-order.

Design
5 problems

API and data-structure design problems — caches, iterators, streaming systems.

Divide and Conquer
3 problems

Problems solved by splitting into independent halves and merging results.

Dynamic Programming
18 problems

Problems solved via memoization or tabulation over overlapping subproblems.

Graph
7 problems

Graph problems — adjacency, traversal, cycle detection, topological sort, union-find.

Greedy
3 problems

Problems where locally-optimal choices lead to a globally-optimal answer.

Hash Table
13 problems

Problems solved with hash maps or sets for O(1) lookup, deduplication, or grouping.

Heap / Priority Queue
4 problems

Problems requiring quick access to min/max — top-K, schedulers, median maintenance.

Interval
5 problems

Problems on intervals — merging, scheduling, overlap detection, meeting rooms.

Linked List
6 problems

Singly and doubly linked-list problems — reversal, cycle detection, merge, reorder.

Math
5 problems

Problems requiring number theory, modular arithmetic, geometry, or pure math reasoning.

Matrix
7 problems

Problems on 2D grids — rotation, traversal, in-place updates, spiral order.

Queue
0 problems

Problems using FIFO order — BFS, level traversal, or scheduling.

Recursion
2 problems

Problems solved by recursive decomposition into smaller sub-problems.

Sliding Window
4 problems

Problems using a moving window over an array or string to compute a contiguous-subrange property.

Sorting
10 problems

Problems where sorting the input is a key step — counting, intervals, two-pointers.

Stack
2 problems

Problems requiring LIFO order — parentheses, monotonic stacks, expression evaluation.

String
18 problems

Problems involving string parsing, comparison, palindromes, or transformations.

Topological Sort
2 problems

DAG problems — course scheduling, build order, dependency resolution.

Tree
11 problems

General tree problems including binary, n-ary, and BST variants.

Trie
3 problems

Prefix-tree problems — word lookup, autocomplete, prefix search.

Two Pointers
6 problems

Problems using two indices that move toward, away, or alongside each other to scan in linear time.

Union-Find
3 problems

Disjoint-set problems — connectivity, cycle detection, Kruskal's algorithm.