Wie schreibe ich eine rekursive Methode, um x ^ n + x ^ (n-1) + x ^ (n-2) zu summieren?

Nov 19 2020

Ich habe gestern eine Frage gestellt, wie man die Summe einer rekursiven Methode findet

Der Beitrag befindet sich hier: Rekursive Methode zur Summe von x ^ 0 + x ^ 1 + x ^ 2 + ... + x ^ n

Wie mache ich eine rekursive Methode in umgekehrter Reihenfolge.

Beispiel: x ^ n + x ^ (n-1) + x ^ (n-2) + ... + 3 + 2, + 1

Ich habe große Probleme, mein Gehirn mit rekursiven Methoden zu beschäftigen, und viele andere Ressourcen helfen mir nicht weiter. Jede Hilfe wird geschätzt. Vielen Dank an alle!

Antworten

2 Andreas Nov 19 2020 at 02:47

Die akzeptierte Antwort lautet:

double r = compute(n-1,x)+ (v = Math.pow(x,n));
System.out.print(" + " + v);

Wenn wir diese verschachtelte Zuweisung auspacken, ist dies:

v = Math.pow(x, n);
double r = compute(n - 1, x) + v;
System.out.print(" + " + v);

Um die Ausgabereihenfolge umzukehren, tauschen Sie einfach die compute()und print()Aufrufe aus. Wir müssen auch das " + "und vin der printAnweisung tauschen .

v = Math.pow(x, n);
System.out.print(v + " + ");
double r = compute(n - 1, x) + v;

Das ist es!

27.0 + 9.0 + 3.0 + 1.0
v = 40.0