In
computer science, a search algorithm, broadly speaking, is an
algorithm that takes a problem as
input and returns a solution to the problem, usually after evaluating a number of possible solutions. Most of the algorithms studied by computer scientists that solve problems are kinds of search algorithms. The set of all possible solutions to a problem is called the
search space.
Brute-force search or "naïve"/uninformed search algorithms use the simplest, most intuitive method of searching through the search space, whereas informed search algorithms use
heuristics to apply knowledge about the structure of the
search space to try to reduce the amount of time spent searching.
See more at Wikipedia.org...