0 Daumen
401 Aufrufe

Aufgabe:

Binäre Exponentiation - Laufzeitanalyse.

Zu zeigen: Worstcase Laufzeit Binäre Exponentiation (rekursiv definiert) soll Ο(log(n)) sein.

Als Hinweis ist folgendes angegeben: Hinweis: Sie können zunächst eine Rekursionsgleichung T(n) = ... aufstellen und dann durch vollständige Induktion eine obere Schranke auf T(n) zeigen.

Avatar von

1 Antwort

0 Daumen
 
Beste Antwort

Aloha :)

Wenn du das als Iteration schreibst:

double power(double x, unsigned n) {
  double p= 1.0;
  while (n) {
      p*=  (n&1) ? x : 1;
      n>>= 1;
      x*=  x;
  }
  return p;
}

ist sofort klar, dass die Schleife maximal \(\lceil\log_2(n)\rceil\) Mal durchlaufen wird.

Avatar von 152 k 🚀

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Mathelounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community