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 Black.
Entry modified 14 January 2009.
HTML page formatted Fri Feb 23 10:06:07 2018.
Cite this as:
Paul E. Black, "deterministic algorithm", in Dictionary of Algorithms and Data Structures [online], Vreda Pieterse and Paul E. Black, eds. 14 January 2009. (accessed TODAY) Available from: https://www.nist.gov/dads/HTML/deterministicAlgorithm.html