1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > 了解时间复杂度以及时间复杂度的计算

了解时间复杂度以及时间复杂度的计算

时间:2023-05-13 02:55:06

相关推荐

了解时间复杂度以及时间复杂度的计算

首先,什么叫时间复杂度?

时间复杂度是一个函数,它定性描述该算法的运行时间。这是一个代表算法输入值的字符串的长度的函数。时间复杂度常用大O符号表述,不包括这个函数的低阶项和首项系数。使用这种方式时,时间复杂度可被称为是渐近的,亦即考察输入值大小趋近无穷时的情况。

简单来说,时间复杂度其实就是一个算法执行的次数。

另外时间复杂度要用大O标记法。

时间复杂度T(n)用O(n)的形式来表示,O(n)里面的n是一个函数。T(n)=O(F(n))。

举几个计算时间复杂度的例子:

注:

如果代码里全是常量,时间复杂度则通通为O(1)。n前面的常数一定要省略掉,如O(2n)直接写成O(n)。如果一个时间复杂度里面有两个函数,我们直接采取里面的最高阶算法。例如O(n^2-n),我们直接写成O(n^2)。

以下是关于计算时间复杂度的例题:

这道题应该选D。

解题思路:基本运算是i=i*2,设其执行时间为T(n),则2T(n)<=n,即T(n)<=log2n=O(log2n)。

解题思路:这段代码里只有常量,所以时间复杂度只有O(1)。

解题思路:当有若干个循环时,时间复杂度是和嵌套层数最多的循环语句中最内层的频度决定的,时间复杂度:O(n^3)。

解题思路:这段代码,for循环里面的代码会执行n遍,因此它消耗的时间是随着n的变化而变化的,因此这类代码都可以用O(n)来表示它的时间复杂度。

解题思路:本段代码基本执行操作是M + N次,因为M和N是两个未知数,所以时间复杂度为O(M+N),如果告诉M远大于N,那么此时的时间复杂度就为O(M),因为时间复杂度就是一个估算的过程。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。