algorithmic paradigm
technique or strategy underlying a variety of algorithms
greedy algorithm
algorithm that makes locally optimal choices in a sequence of steps with the goal of reaching a global optimum
heuristic
type of algorithm that may sometimes fail or produce an approximate, incorrect, or suboptimal result
dynamic programming
problem optimization method that simplifies a complicated problem by decomposing it into simpler subproblems recursively
randomized algorithm
algorithm designed to use randomness from auxiliary inputs as part of its logic
branch and bound
algorithm for optimization problems
Las Vegas algorithm
randomized algorithm guaranteed to eventually produce correct or optimal results
divide-and-conquer algorithm
algorithm design paradigm based on multi-branched recursion
Monte Carlo algorithm
randomized algorithm with some probability of producing the wrong result
recursive-descent parser
style of parser written as a recursive structure matching the grammar it parses
hybrid algorithm
algorithm that adaptively switches between two or more other algorithms that solve the same problem
recursion
algorithmic technique in computer science of solving a problem by reducing it to a smaller instance of the same problem
brute-force search
computer problem-solving technique
copy-on-write
resource-management technique used in computer programming