Java Rekursionstiefe bestimmen?
Hallo, wie kann ich die Rekursionstiefe bestimmen? Oder wie kann ich diese verändern. Bsp.: Die aktuelle Rekursionstiefe beträgt 1 und ich will eine Rekursionstiefe von 2.
3 Antworten
![](https://images.gutefrage.net/media/default/user/6_nmmslarge.png?v=1438863662000)
Rekursionstiefe bestimmen: klassisch durch eine Variable, die sich mit jedem Wiedereintritt in die Rekursion um eins erhöht, z.B.
void rek(int i){
System.out.println(i);
if(i<MAX)rek(i+1); // wenn statt dessen rek(++i) wird i auch im Aufruf erhöht.
}
Rekursionstiefe verändern: Durch die Abbruchbedingung, in meinem Beispiel über MAX (etwa als final int).
![](https://images.gutefrage.net/media/default/user/6_nmmslarge.png?v=1438863662000)
Die Rekursionstiefe wird in meinem Beispiel allein anhand MAX bestimmt. Damit kann ich die Rekursion vollständig bestimmen, vergrößern, verkleinern.
![](https://images.gutefrage.net/media/default/user/9_nmmslarge.png?v=1551279448000)
Kann ich dir mein Problem mal über den Privatchat schildern?
![](https://images.gutefrage.net/media/default/user/6_nmmslarge.png?v=1438863662000)
Ja, mache es, ggf. mir auf GF Freundschaft anbieten, ich nehme an und dann kannst Du mailen.
![](https://images.gutefrage.net/media/user/MrAmazing2/1562539605664_nmmslarge__63_0_466_466_da6195808c107c57ce2a8b233a2bcf4f.jpg?v=1562539606000)
Die Zahl in der If-Abfrage ändern, welche die Rekursion am gewünschten Punkt abbricht.
Ohne Code können wir da nicht mehr sagen.
![](https://images.gutefrage.net/media/default/user/9_nmmslarge.png?v=1551279448000)
![](https://images.gutefrage.net/media/user/Mastermind498/1601584545055_nmmslarge__37_0_250_250_0e8639e65a208a66e3f570a513032b25.png?v=1601584545000)
Du könntest einen Counter mit geben, der sich bei jedem rekursiven Funktionsaufruf um 1 erhöht. Und wenn der eben 2 beträgt, springst du mit return aus der Methode raus
In meinem Fall will ich die Rekursionstiefe ja vergrößern