请各位来看看该怎么解决这个问题?。

img


请问一下怎么算出这个算法的时间复杂度,可以的话给个教程步骤,谢谢各位了

所以问题是什么

这个好像是验证质数的吧。求复杂度意义不大吧。

像if else这种没有循环的复杂度就是O(1)
第二块for循环复杂度为sqrt(num),因为num不是一个具体的常数,所以为n
所以第二块for循环复杂度为O(sqrt(n))
总的就是O(1) + O(sqrt(n)) = O(sqrt(n))
方法:
如果给的变量作为循环次数,例如num,这种就当成n,具体最大值多少题目会给成范围,然后套到n里面去,不具体算就直接写n
算时间复杂度的方法就是取最大复杂度,没有循环即是O(1),有循环看几层,每一层循环次数是多少,循环次数相乘就是复杂度
希望题主采纳!