Square-And-Multiply-Methode zum Potenzieren
Eine Methode um schnell zu berechnen.
Diese Methode lässt sich rekursiv definieren als:
Ist , so ist
Laufzeit
Die Laufzeit ist durch die Größe von beschränkt. In jeder Iteration wird halbiert. Wir berechnen also schnell, dass wir nur Schleifenwiederholungen brauchen. Wir müssen also mal ein Quadrat bilden und höchstens Multiplikationen durchführen.
Die Laufzeit lässt sich also mit abschätzen.
Variante 2
In der zweiten Variante versuchen wir den Exponenten stückweise kleiner zu machen. Dabei müssen wir dann immer nur kleine Potenzen berechnen, da die Modulo Operation die Zahlen immer kleiner gleich hält.
Wir verwenden also einmal für gerades und für ungeraded Algorithmisch lässt sich auch dieses Verfahren rekursiv definieren, mit:
Wenn , dan ist .
Für und gerade: Für und ungerade:
code paste here
Variante 3
code paste here