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

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:

主站蜘蛛池模板: 手机| 新兴县| 治县。| 海城市| 虹口区| 宣武区| 黔江区| 芜湖市| 黔东| 德清县| 桐梓县| 泰安市| 鄯善县| 菏泽市| 乌什县| 民勤县| 明水县| 青阳县| 武义县| 山东| 阿图什市| 金阳县| 富民县| 天柱县| 马尔康县| 即墨市| 托克逊县| 长宁区| 德庆县| 平罗县| 长沙市| 安顺市| 固阳县| 枣强县| 巴塘县| 个旧市| 滦南县| 宜君县| 化德县| 吉首市| 昭通市|