官术网_书友最值得收藏!

Big O notation

The letter "O" in big O notation stands for order, in recognition that rates of growth are defined as the order of a function. We say that one function T(n) is a big O of another function, F(n), and we define this as follows:

The function, g(n), of the input size, n, is based on the observation that for all sufficiently large values of n, g(n) is bounded above by a constant multiple of f(n). The objective is to find the smallest rate of growth that is less than or equal to f(n). We only care what happens at higher values of n. The variable n0represents the threshold below which the rate of growth is not important, The function T(n) represents the tight upper bound F(n). In the following plot we see that T(n) = n2 + 500 = O(n2) with C = 2 and n0 is approximately 23:

You will also see the notation f(n) = O(g(n)). This describes the fact that O(g(n)) is really a set of functions that include all functions with the same or smaller rates of growth than f(n). For example, O(n2) also includes the functions O(n), O(nlogn), and so on.

In the following table, we list the most common growth rates in order from lowest to highest. We sometimes call these growth rates the time complexity of a function, or the complexity class of a function:

主站蜘蛛池模板: 巩留县| 杭州市| 怀化市| 太谷县| 独山县| 富裕县| 平谷区| 怀来县| 柳河县| 龙山县| 林甸县| 睢宁县| 莎车县| 阳西县| 宝兴县| 金沙县| 东乌| 静乐县| 孟州市| 东安县| 武强县| 阿图什市| 英德市| 英山县| 班玛县| 县级市| 定日县| 子洲县| 尚义县| 平乡县| 桃园市| 沙湾县| 陆良县| 四平市| 确山县| 获嘉县| 清涧县| 集安市| 阿荣旗| 新乡市| 菏泽市|