Sie haben 2 Möglichkeiten: die empirische Art und Weise und der predictible Weg.
a =1000000
import math
print("theorical iterations {}".format(int(math.log2(a//10)+0.5)))
counter=0
while a >=10:
counter+=1
a//=2
print("real iterations {}".format(counter))
ich:
theorical iterations 17
real iterations 17
Die experimentelle Methode nur die Iterationen zählt, während die Vorhersageverfahren auf dem abgerundeten beruht (auf obere Schranke) Ergebnis log2
Wert von a
(was die Komplexität entspricht der der Algorithmus).
(It obere Schranke abgerundet ist, weil, wenn es mehr als 16 ist, dann müssen Sie 17 Wiederholungen)
speichern, die in einer Variablen während Schleife. – Deep