(definition)

**Definition:**
When the execution time of a computation, m(n), is no more than a *polynomial* function of the problem size, n. More formally m(n) = *O(n ^{k})* where k is a constant.

**Specialization** (... is a kind of me.)

*sublinear time algorithm*.

**See also**
*NP*, *exponential*, *logarithmic*.

*Note:
Broadly speaking, polynomial time algorithms are reasonable to compute. The time to run exponential algorithms grows too fast to expect to be able to compute exact solutions in all cases.*

Author: PEB

Go to the Dictionary of Algorithms and Data Structures home page.

If you have suggestions, corrections, or comments, please get in touch with Paul Black.

Entry modified 13 August 2004.

HTML page formatted Tue Jan 16 10:34:44 2018.

Cite this as:

Paul E. Black, "polynomial time", in
*Dictionary of Algorithms and Data Structures* [online], Vreda Pieterse and Paul E. Black, eds. 13 August 2004. (accessed TODAY)
Available from: https://www.nist.gov/dads/HTML/polynomialtm.html