报考教师证步骤:时间复杂度问题

来源:百度文库 编辑:杭州交通信息网 时间:2024/04/29 09:45:22
在各种不同算法中,若算法中语句执行次数为一个常数,则时间复杂度为O(1),另外,在时间频度不相同时,时间复杂度有可能相同,如T(n)=n2+3n+4与T(n)=4n2+2n+1它们的频度不同,但时间复杂度相同,都为O(n2)。

这句话有些不理解,请高手指点一下,谢谢!

所谓的时间复杂度就是解决问题的时间和问题的规模之间的关系,即解决问题所耗费的时间随问题规模增长成怎样的增长对应关系.
例如,解决问题所需要的语句不管为1000条还是10000条
如果不包括循环的话,时间复杂度就是个常数.因为不管是一千还是一万,它是个定死的数.所以时间复杂度为O(1).
又如,你所给的后两个,时间和问题规模的对应关系为二次幂关系,系数对结果的影响相对于幂指数的影响可以忽略不计,所以他们的时间复杂度都为O(n^2)

简单说就是一个数量级的,具体不一样
可以不记的

我来打比方
---------
你从你家到菜场有3种走法:
1.朝南走(2个左传3个右转)
2.朝北走(3个左传2个右转)
3.朝西走(3个右转2个左传)

1与3显然是一致的
2就不一定暸~

如果你用方法1是走的去,
而你用方法3是打的去。
那么我说它们的频度不同,但时间复杂度相同~~
2的话难说……
--------
就这样暸
可能比方打的不太好~