Algorithmus zu gegebener Laufzeit implementieren

Dobby1

Mitglied
hi,
ich habe ein kleines Problem. ich soll einen Algorithmus für die Formel f(n) = 2^n -1 mit vorgegebener Laufzeit implementieren.

Bin ihc mit meinem Problem hier überhaupt richtig?
+. *, /, - alles zählt als eine operation
a) für die Laufzeit Theta(n^2)
b) für die Laufzeit thete(n^n)

zu a) ich habe mir gedahct dass man zwei ineinander verschachtelte vorschleifen machen könnte, darin dann eine operation dann hatte man ja n^2 operationen aber ich hab keine ahnung wie es genau aussehen soll

zu b) es wurde uns ein tipp gegeben dass man "unnötige " sachen implementieren muss, die allerdings zur lösung beitragen müssen, man darf nicht nur eine unnötige schleife reinschreiben.

es wäre super wenn ihr mir helfen könnt und mir ein paar tipps geben könntet.

vielen dank schonmal
 
Zuletzt bearbeitet:
du kannst in java ganze formeln reinsetzten, musst nur die wertigkeit der Operanden beachten

Tutorial / Java Grundlagen / Operatoren

also kannst du schreiben

Java:
for( int n =1; n <iterationen; n++){
   System.out.println( "f(" +n +")" +" "+Math.pow( 2, n-1));
}

oder in einer whileschleife
Java:
double fn =0;
double x =10000000;
int n =1;
while( fn <x ){
   fn =Math.pow( 2, n-1);
   n++;
}

n kann auch über ein double realisiert werden um kleinere schritte zu machen
 
Zuletzt bearbeitet:

Zurück
Oben