a。爲什麼該代碼不會在未輸入if
條件的範圍內爲每個m打印is prime
?效率如何計算和基本瞭解
def trial_division(N):
up= round(N**0.5+0.5)
for m in range (2,up+1):
if N%m==0:
print (m,"is the smallest divisor of",N)
break
else:
print (N, "is prime")
b。如何計算其效率?如果N
是n位長,爲什麼它不是N ñ\ 2
如何位進入到這個? –
該算法具有N^0.5個階段,因此最多需要N^0.5個分度,但是如果N是n個比特長度,那麼N^0.5就n而言是多少? – user7777777