标签: python algorithm
你好我有一个算法,我找不到性能。
i=math.ceil(n**0.5) while n % i != 0: i -= 2
这会是O(2 ^ n)吗?
答案 0 :(得分:4)
我不知道你要做什么,但是你的当前代码会运行错误不能除以,对于很多情况,例如n=13,但如果你这样做代替i-=1代替i-=2,您的代码将正常运行,每n没有任何错误,复杂性为O(n^(1\2))。
n=13
i-=1
i-=2
n
O(n^(1\2))