General strategies for building algorithms, as opposed to any single algorithm. Divide and conquer splits a problem into smaller copies of itself, dynamic programming stores the answers to overlapping subproblems, and greedy methods take the best local choice at each step. Backtracking, branch and bound and brute-force search explore a space of candidates, while randomized, approximation and heuristic methods give up some exactness to finish in reasonable time.
Browse By
Algorithm Design Strategies
Filter Results11 entries
Sources
Alpha-beta pruning - Wikipedia
Has Member: Alpha-Beta Pruning, LeadQuote, Has Member: Alpha-Beta Pruning, Lead
Alpha-beta pruning is a tree search algorithm that seeks to decrease the number of nodes that are evaluated by the minimax algorithm
View the Source Recursion (Wikipedia)
Has Member: Recursion, LeadQuote, Has Member: Recursion, Lead
Recursion occurs when the definition of a concept or process depends on a simpler or previous version of itself.
View the Source Wikipedia: Dynamic Programming
Wikimedia FoundationHas Member: Dynamic Programming, LeadQuote, Has Member: Dynamic Programming, Lead
Dynamic programming (DP) is both a mathematical optimization method and an algorithmic paradigm.
View the Source Wikipedia: Approximation algorithm
Has Member: Approximation Algorithms, LeadQuote, Has Member: Approximation Algorithms, Lead
In computer science and operations research, approximation algorithms are efficient algorithms that find approximate solutions to optimization problems (in particular NP-hard problems) with provable guarantees on the distance of the returned solution to the optimal one.
View the Source Wikipedia: Backtracking
Has Member: Backtracking, LeadQuote, Has Member: Backtracking, Lead
Backtracking is a class of algorithms for finding solutions to some computational problems, notably constraint satisfaction or enumeration problems, that incrementally builds candidates to the solutions, and abandons a candidate ("backtracks") as soon as it determines that the candidate cannot possibly be completed to a valid solution.
View the Source Wikipedia: Branch and Bound Algorithm
Wikimedia FoundationHas Member: Branch and Bound, LeadQuote, Has Member: Branch and Bound, Lead
Branch-and-bound (BB, B&B, or BnB) is a method for solving optimization problems by breaking them down into smaller subproblems and using a bounding function to eliminate subproblems that cannot contain the optimal solution.
View the Source Wikipedia: Brute-force search
Has Member: Brute-Force Search, LeadQuote, Has Member: Brute-Force Search, Lead
In computer science, brute-force search or exhaustive search, also known as generate and test, is a very general problem-solving technique and algorithmic paradigm that consists of systematically checking all possible candidates for whether or not each candidate satisfies the problem's statement.
View the Source Wikipedia: Divide-and-conquer algorithm
WikipediaHas Member: Divide and Conquer, LeadQuote, Has Member: Divide and Conquer, Lead
In computer science, divide and conquer, originally a political maxim, designates an algorithm design paradigm.
View the Source Wikipedia: Greedy algorithm
Has Member: Greedy Method, LeadQuote, Has Member: Greedy Method, Lead
A greedy algorithm is an algorithm which, at each step, makes the choice that is locally optimal, and subsequently does not reconsider past choices.
View the Source Wikipedia: Heuristic (computer science)
Has Member: Heuristics, LeadQuote, Has Member: Heuristics, Lead
In mathematical optimization and computer science, heuristic (from Greek εὑρίσκω eurísko "I find, discover") is a technique designed for problem solving more quickly when classic methods are too slow for finding an exact or approximate solution, or when classic methods fail to find any exact solution in a search space.
View the Source Wikipedia: Randomized algorithm
Has Member: Randomized Algorithms, LeadQuote, Has Member: Randomized Algorithms, Lead
A randomized algorithm is an algorithm that employs a degree of randomness as part of its logic or procedure.
View the Source Reader Challenges (0)
No disputes yet. Spotted an error or a better source? Open the first one.
Sign in to dispute this or suggest a correction.