After some research about algorithms I found two terms which confuses me. I\'ve read at least 20 papers and yet, there aren\'t any clear definition about either. I hope someone
In order to give a proper quotation, relative to Alejandro answer:
« A metaheuristic is a high-level problem-independent algorithmic framework that provides a set of guidelines or strategies to develop heuristic optimization algorithms [...] A problem-specific implementation of a heuristic optimization algorithm according to the guidelines expressed in a metaheuristic framework is also referred to as a metaheuristic » (Sörensen, Glover on http://scholarpedia.org/article/Metaheuristics)
To be fully complete. We should distinguish between exact, approximate and heuristics algorithms. An exact algorithm finds an exact solution. An approximate algorithm should find an approximate solution, within an acceptable time, as well as indicate its discrepancy range with the supposed optimal solution. An heuristics simply find a good-enough solution, within an acceptable time.
By the way, Alejandro quicksort's example does not appear fully adequate for two or three different reasons.