首页 > 解决方案 > 计算给定代码的时间复杂度的问题

问题描述

给定代码的时间复杂度是多少?答案:O(log2n) 怎么样?(i=0;i<n;i*2) 无限循环,直到条件满足 false

在此处输入图像描述

标签: javascriptalgorithmtime-complexity

解决方案


您有无限循环,因为您只需在增量表达式中乘以零值,而不在变量中设置新值i
因此,您设置的条件始终有效。
你需要真正增加你i来打破循环。

例如,您的增量表达式应该是这样的:

i *= 2

代替

i * 2

如果您真的希望变量i在初始化时为 0,同时保持算法不变,那么您必须在for范围循环中递增它以避免出现无限循环。


推荐阅读