Hallo,
habe bei folgender Methode einen StackOverflowError, wenn ich sie in einer anderen Methode aufrufe.
Weiß aber nicht warum.
Kann mir wer helfen?
Die Methode berechnet übrigens den Binomialkoeffizienten
habe bei folgender Methode einen StackOverflowError, wenn ich sie in einer anderen Methode aufrufe.
Weiß aber nicht warum.
Kann mir wer helfen?
Java:
static BigInteger binom(BigInteger n, BigInteger k) {
if (k.compareTo(n.divide(Big2)) == 1) {
k = n.subtract(k);
}
if (k.compareTo(Big0) < 1 || n.compareTo(Big0) < 1) {
return Big1;
}
else {//rekursiver Aufruf
return binom(n.subtract(Big1), k.subtract(Big1)).multiply(n).divide(k);
}
}
Die Methode berechnet übrigens den Binomialkoeffizienten