私は「Think Java:コンピュータ科学者のように思う方法」という本を読んでいます。私は最近、再帰的方法を取り上げました。再帰関数の変更はどのように変更され、結果を変更しますか?
public static void countdown(int n)
if (n == 0) {
System.out.println("Blastoff!");
} else {
System.out.println(n);
countdown(n - 1);
}
}
これが0にカウントダウンするために使用される通常の再帰的な方法だろうと私は何が起こっているかを理解していますが、この
if (n == 0) {
System.out.println("Blastoff!");
} else {
countup(n - 1);
System.out.println(n);
}
ようにするSystem.out.println前に、再帰呼び出しを行う場合それはoppisote方法を数えます、もし私がこれらの痙攣声明の両方の議論3を与えたら、第1のものは "3、2、1、Blastoff"になります。しかし、2番目の1は "Blastoff、1,2,3"になります。これがどのように機能するのか分かりません。このコードで何が起きているのかを説明しようとする人は、逆に数えることができますか?
になりました。スタック交換ネットワークへようこそ。あなたが投稿したサイト(セキュリティ)は、攻撃者からデータやネットワークを保護することです。私はそれがより良い答えを得るスタックオーバーフローに移動するために投票しました。 –
私も同様に投票しました。 user122144、なぜここに質問を投稿しましたか? – unforgettableid