Definition: An algorithm whose behavior can be completely predicted from the input.
See also nondeterministic algorithm, randomized algorithm.
Note: That is, each time a certain set of input is presented, the algorithm does the same computations and gives the same results as any other time the set of input is presented. For algorithms with state, or that maintain information between inputs, "the input" means everything since the algorithm was started from an initial state.
There can be degrees of deterministic behavior. For instance, an algorithm that uses random numbers is not usually considered deterministic. However if the "random numbers" come from a pseudo-random number generator, the behavior may be deterministic.
If you have suggestions, corrections, or comments, please get in touch with Paul E. Black.
Entry modified 14 January 2009.
HTML page formatted Fri Mar 25 16:20:34 2011.
Cite this as:
Paul E. Black, "deterministic algorithm", in Dictionary of Algorithms and Data Structures [online], Paul E. Black, ed., U.S. National Institute of Standards and Technology. 14 January 2009. (accessed TODAY) Available from: http://www.nist.gov/dads/HTML/deterministicAlgorithm.html