01 — Problem Directory

Data Structures & Algorithms

Complete catalog of 99 interactive algorithm visualizers. Browse by data structure category or filter by difficulty.

Showing 14 of 99 visualizers
BT
Backtracking
Medium
Backtracking: Decision Tree & Constraints

Explore the universal backtracking template: watch the state space tree expand, witness constraint pruning terminate invalid branches early, and trace how choices are systematically undone.

BacktrackingDecision TreePruning+3
BT
Backtracking
Medium
Beautiful Arrangement

Count the number of permutations where either the number at position i is divisible by i, or i is divisible by the number, using recursive backtracking and divisibility pruning.

BacktrackingBit ManipulationRecursion+2
BT
Backtracking
Easy
Binary Tree Paths

Find all root-to-leaf paths in a binary tree in any order using depth-first search and backtracking.

BacktrackingTreeDepth-First Search+1
BT
Backtracking
Medium
Combination Sum

Find all unique combinations of candidate numbers that sum to target using recursive backtracking on the decision tree.

BacktrackingRecursionArray+2
BT
Backtracking
Medium
Combination Sum II

Find all unique combinations in candidates that sum to target. Each number may only be used once, using duplicate skipping and branch pruning.

BacktrackingRecursionArray+2
BT
Backtracking
Medium
Combinations

Given two integers n and k, return all possible combinations of k numbers chosen from the range [1, n] using recursive backtracking on the decision tree.

BacktrackingRecursionCombinations+2
BT
Backtracking
Medium
Generate Parentheses

Generate all combinations of well-formed parentheses using recursive backtracking with open and close count pruning.

BacktrackingRecursionString+2
BT
Backtracking
Medium
Letter Combinations of a Phone Number

Generate all possible letter combinations that the input phone digits could represent using keypad mapping and recursive backtracking.

BacktrackingRecursionString+3
BT
Backtracking
Medium
Palindrome Partitioning

Partition a string such that every substring of the partition is a palindrome using backtracking and two-pointer palindrome validation.

BacktrackingTwo PointersString+2
BT
Backtracking
Medium
Permutations

Generate all possible permutations of an array of distinct integers using recursive backtracking and a visited set.

BacktrackingRecursionPermutations+2
BT
Backtracking
Medium
Restore IP Addresses

Generate all possible valid IPv4 addresses by partitioning a string into four octets (0-255 without leading zeros) using recursive backtracking.

BacktrackingStringRecursion+1
BT
Backtracking
Medium
Subsets

Generate all possible subsets (the power set) of a distinct integer array using recursive backtracking on the decision tree.

BacktrackingRecursionPower Set+2
BT
Backtracking
Medium
Subsets II

Generate all unique subsets from an integer array that may contain duplicates using sorting, duplicate skipping, and recursive backtracking.

BacktrackingRecursionArray+2
BT
Backtracking
Medium
Word Search

Determine if a target word exists in a 2D grid of characters by constructing a path of adjacent cells without reusing any cell.

BacktrackingMatrixDFS+1