2021计算机考研:浅谈时间复杂度计算
很多本专业或者跨专业的学生在备考的时候觉得时间复杂度的计算不好掌握,经常题干中代码一变就不知道该怎么计算,今天跟随小编一起来浅谈时间复杂度的计算。
算法的时间量度指的是算法中基本操作重复执行的次数。
一般情况下,算法中基本操作重复执行的次数是问题规模n的某个函数f(n),算法的时间量度记作T(n)=O(f(n)),通常称为时间复杂度,其中O的形式定义为:若f(n)是正整数n的一个函数,则xn=O(f(n))表示存在一个正的常数M,使得当n&gen0时都满足|xn|&leM|f(n)|。
注意:基本操作是其重复执行的次数和算法的执行时间成正比的原操作,多数情况下它是最深层循环内的语句中的原操作,它的执行次数和包含它的语句的频度是相同的。语句的频度指的是该语句重复执行的次数。
计算时间复杂度关键的基本操作。例如,在下列3个程序段中:
(1)++x s=0
(2)for (i =1 i <=n ++i) ++x s+=x
(3)for (j =1 j<=n ++j)
for (k =1 k<=n ++k) ++x s+=x
含基本操作“x增1”的语句的频度分别为1、n和n2,则这3个程序段的时间复杂度分别为O(1)、O(n)和O(n2)。算法还可能呈现的时间复杂度有对数阶O(log2n)、指数阶O(2n)等。
备考过程中,你可能很努力却还收效甚微,但我们要记住,量变坚持下去才会形成质变。星光不问赶路人,时光不负有心人。你的坚持,终将美好。
以上就是小编整理的“2021计算机考研:浅谈时间复杂度计算”相关内容,希望对大家有所帮助,预祝大家能考上理想的院校。
评论列表 人参与