Efficiency of Algorithms
Learn about the efficiency of algorithms in this lesson.
We'll cover the following
Introduction
There’s a natural demand for a definition that says under which conditions an algorithm can be viewed as working efficiently. This classification is done due to the growth rates of the functions considered in the table given below.
Considering the classes of time complexity, we can say that the difference between the growth rates of polynomial and exponential functions is the most dramatic one. Sipser (2012) describes the characteristics of exponential time functions as algorithms that “typically arise when we solve problems by exhaustively searching through a space of solutions, called brute-force search.”
Table 1
Name | Running Time | Examples of Running Time |
---|---|---|
Constant time | 8 | |
Log-logarithmic time | ||
Logarithmic time | ||
Polylogarithmic time | ||
Linear time | ||
Quasilinear time | ||
Quadratic time | ||
Polynomial time | ||
Exponential time | ||
Factorial time |
Get hands-on with 1400+ tech skills courses.