网站建设第一品牌
网络营销整合专家

时间复杂度的表示、分析、计算方法……一文带

来源:未知   更新时间:2020-11-11

上述比如中,最大的两块代码时刻复杂度分别为 O和O,其成果本应该是:T=O O,咱们取其中最大的量级,因而整段代码的复杂度为:O

所以得出结论: 量级最大的那段代码时刻复杂度=总的时刻复杂度

void Func1 {
 for  {
 Func2; //履行n次,每次都会调用Func2函数履行n次
void Func2 {
 int sum = 0;
 for 
 sum  = 1; //履行n次
}

因而这段代码时刻复杂度为 O * O = O = O

同理,假如将其中一个n换成m,那么它的时刻复杂度便是 O

常见的几种时刻复杂度


void Func {
 for  {
 printf
}
void Func {
 printf
}

信任你也看了解了,O不是说代码只要一行,这个1它代表的是一个常量,即便它有曾经一万行这样的也是O,由于它是固定的不会改变, 所以但凡常量级复杂度代码,均记为O

void Func {
 for  {
 printf,O ,这就有点难度了!

首要咱们来回想以下换底公式:

记住公式啊,来看比如:

void Func {
 for  {
 i = i * 2;
}

能够看出,i = i * 2这行代码履行次数是最多的,那么究竟履行了多少次呢?

第一次 i=2,履行第2次 i=4,履行第三次 i=8…

假定它履行了x次,那么x的取值为:

当上述代码的2改成3的时分,x的取值也便是:

当然不论log的底数是几,是e也好,是10也罢,通通记为:

这是为啥子念?由换底公式能够计算出:

换底之后,能够看出log3其实便是一个常数,疏忽它!而在这场游戏中,log默许便是以2为底的,所以通通记为 O 。

void Func {
 for  {
 Func2; //履行n次,嵌套调用,每次调用履行logn次
void Func2 {
 for 
 i = i * 2; //履行logn次
}

所以这个O也很好了解了吧!

其他就不赘述了,信任聪明的你必定能够触类旁通!假如对你有协助,就点个“在看”支撑下作者吧!

《原力方案-

上一篇:上一篇:富士康与菲亚特克莱斯勒合作,为中国研发电动

下一篇:下一篇:没有了

返回列表

最新案例

最新案例

最新签约动态

关于我们

更多 +联系我们

业务电话:020/00000000020/00000000

业务 QQ:   123456789传真: 020-00000000

E-mail:  admin@XX.com售后QQ : 123456789

我们的认知

当对手还在将注意力停留在碎片化的互联网设计或程序实现时,我们早已开始将数字品牌的建设和传播进一步整合。只有通过整体的互联网品牌分析,帮助品牌建立互联网品牌传播价值,并围绕价值建立品牌粘性,提升品牌与用户的互动,更好的帮助品牌传播,触发用户的行动力才是我们工作的终极目标,这正是一流品牌的成功秘诀。
不可否认,建立互联网品牌传播价值的确是门艺术,但互联网不同于艺术涂鸦,企业投资品牌绝不是希望品牌成为某个艺术家的实验品。互联网传播的对象是用户,用户拥有自己的文化体系,群落共性才是互联网品牌传播创意的源头,如果我们不能帮助企业激发目标用户的共鸣,产生购买冲动,那将是品牌的悲剧! 因此,互联网传播必须建立品牌传播价值,为梦想者创造梦想品牌,我们与您同行!

l>