In 
computer science, a 
heuristic is an 
algorithm or procedure
designed to solve a problem that ignores whether the solution is probably correct, but which usually produces a good solution or solves a simpler
problem that contains or intersects with the solution of the more complex
problem.
A heuristic is not guaranteed always to solve the problem, but often solves it
well enough for most uses, and often does so more quickly than a more complete
solution would.
 
All Wikipedia text 
is available under the 
terms of the GNU Free Documentation License